如何使用尾随和开始文本解析JSON?

时间:2011-07-25 16:45:24

标签: javascript jquery json

我希望通过JavaScript(jQuery)创建一个JSON的HTML版本,特别是非官方的Google Dictionary JSON(http://googlesystem.blogspot.com/2009/12/on-googles-unofficial-dictionary-api.html)。

我面临的问题是JSON不可读,因为它在“dict_api.callbacks.id100(”前面有这个,并且跟在“,200,null)”后面。

如何删除它,然后将其放入JSON对象,以便我可以将元素附加到HTML。提前谢谢。

2 个答案:

答案 0 :(得分:0)

这是一个JSONP响应。

它调用callback参数指定的函数来为您提供响应 您应该创建一个全局函数来处理响应,并将其名称作为callback传递。

jQuery会为你做这件事:

$.getJSON(
    "http://www.google.com/dictionary/json?q=test&sl=en&tl=en&restrict=pr%2Cde&client=te&callback=?",
    function(response) {
        alert(response);
    }
)

答案 1 :(得分:0)

你可以做的一件事就是写一个正则表达式(或一对正则表达式)来做类似的事情:

string.replace(/匹配start /的正则表达式,“”) string.replace(/ Regulat表达式与finish /,“”匹配)

如果你走这条路线,小心不要使用贪婪的正则表达式,在这样的情况下,我已经看到了贪婪表现的娱乐性但不是非常有用的结果。

否则,我肯定会接受SLaks与使用JQuery相关的其他响应,因为如果您的需要在事后发生变化,它还应该为您提供额外的处理数据的能力。