是否有可能解析与JavaScript的JSON?

问题描述:

我有另一个域(不是我的)托管的JSON文件的外部URL。是否有可能只用JavaScript解析这些信息?以下是JSON数据的示例。我只想获得"q"的值。是否有可能解析与JavaScript的JSON?

[{"url":"http://website.com/?q=who+is+ip+search","q":"who is ip search"},{"url":"http://website.com/?q=eclipse+visual+editor","q":"eclipse visual editor"},{"url":"http://website.com/?q=partition+recovery","q":"partition recovery"},{"url":"http://www.website.com/?q=katzenfurz","q":"katzenfurz"},{"url":"http://website.com/?q=rtfm","q":"rtfm"},{"url":"http://website.com/?q=Google+ist+Dein+Freund","q":"Google ist Dein Freund"}] 
+1

为了添加一些历史记录,JSON最初在JavaScript中使用soley,并且表示JavaScript Object Notation。所以是的,JSON应该可以通过JavaScript进行解析。 – kzh

+0

[在jQuery中序列化为JSON]的可能的重复(http://*.com/questions/191881/serializing-to-json-in-jquery) – outis

+0

我认为[本网站](http://www.json。 org/js.html)可能是你正在寻找的。 –

浏览器有本地解析方法 - >JSON.parse()JSON.stringify()

也有增加JSON解析能力的几个库...

评估和演示,有时直接用在JavaScript中 - 但也有经常使用这种方法时,安全问题 - >http://en.wikipedia.org/wiki/JSON#JavaScript_eval.28.29

+0

哪些现代浏览器不实现'JSON.parse()'?我不认为有任何... –

+0

@ŠimeVidas也许它的一切...然后我假设一些移动浏览器没有实现它...也许是错误的 – ManseUK

+1

http://caniuse.com/#search=JSON –

是的,有一个内置的JSON.parse()功能。只需将该字符串传递给该函数即可。

var obj = JSON.parse(data); 

现场演示:你知道http://jsfiddle.net/h4XTP/

+0

可以我做这个? 'var obj = JSON.parse('http://website.com/recent.json');' – bammab

+0

@bammab不,你必须首先检索JSON字符串...(通过Ajax,当然) –

+0

好吧我不知道这是我需要的那部分ii wll搜索文档谢谢 – bammab

JSON是JavaScript对象;是的,你可以用JS解析它。尽管您将远程服务器作为数据发布者,但您必须为该服务器配置回调函数。 要进行远程请求,需要在页面中插入一个新的脚本标记,以便您指定远程URL。响应返回将加载一个JSON对象作为您在请求中指定的回调函数的参数。

一旦读到某处。希望它有帮助。