为什么parseJSON返回null

时间:2011-06-24 08:49:43

标签: jquery json

我有以下jQuery / JS代码

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script>
  $.getJSON("http://example/topics", {}, function(data){
           console.log( data ); // display the JSON *data* in the web console
           console.log( $.parseJSON(data) );
  });
</script>

console.log(data)在firebug控制台(firefox附加组件)中显示JSON数据,但 console.log($ .parseJSON(data))显示

可能的原因。

我需要将JSON字符串转换为数组。

2 个答案:

答案 0 :(得分:21)

我假设因为$.getJSON已经解析了数据。 data是Javascript对象。

  

success回调传递返回的数据,该数据通常是JSON结构定义的JavaScript对象或数组,并使用$.parseJSON()方法进行解析。

当然,如果您向我们展示输出,我们可以说更多,但通常情况下,$.getJSON已经解析了响应。

P.S。:我希望您在实际代码中使用正确的URL。

答案 1 :(得分:2)

尝试验证你的json字符串,我猜它是无效的(因为这个而无法解析):http://jsonlint.com/