2016-06-09 58 views
1

Javascript:如果我有一个只包含JSON内容的url,那么我该如何从url中将JSON存储在一个我可以遍历并获取某些值的变量中?Javascript:将包含JSON的URL转换为可遍历变量?

例如,URL可能包含这样的事情,并没有别的:

{"cookies": [ {"chocolate": 50}, {"raisin": 12} ] } 

我怎么可能提取URL的内容有,我可以指定内容到一个变量中的对象,例如x,然后使用像x.cookies这样的函数来获得[{“chocolate”:50},{“raisin”:12}]} ??

非常感谢!我非常感谢你的帮助:)祝你有美好的一天!

+1

你的意思是你想解析一个JSON字符串到一个JSON对象吗? 'JSON.parse(urlString)' – zeronone

+0

你问如何获取网址? – ray

+0

是啊@ray。我需要获取网址! –

回答

0

你会想看看使用XMLHttpRequest,或者如果你使用jQuery,你可以使用getJSON()

+0

这会很好用,但JSON.parse需要一个字符串。我需要给它一个url,从中提取包含在该站点上的字符串,然后我可以解析它。换句话说,如果你知道如何从一个URL去将这个URL的内容转换成文本,那就是我所需要的。我认为Python有能力导入可以读取URL的urllib,但是在Javascript中有相当的功能吗? –

+0

更新了我的答案,并提供了关于如何获取网址的链接。 – ray

0

JSON.parse是将JSON字符串转换为变量的常规命令。

var x = JSON.parse('{"cookies": [ {"chocolate": 50}, {"raisin": 12} ] }'); 
console.log(x.cookies); 
+0

这会很好用,但JSON.parse需要一个字符串。我需要给它一个url,从中提取包含在该站点上的字符串,然后我可以解析它。换句话说,如果你知道如何从一个URL去将这个URL的内容转换成文本,那就是我所需要的。 –

+0

哦,所以你要使用AJAX库如jQuery http://api.jquery.com/jQuery.ajax/ 喜欢的东西 ' $阿贾克斯({ 网址:“HTTP://path-to-content“, }) .done(function(data,textStatus,jqXHR)if(console && console.log){ console.log(”Server returned:“,data); } }); ' JQuery会自动将JSON文本解析为一个对象 – Eric