Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何解析json数组_Javascript_Json - Fatal编程技术网

Javascript 如何解析json数组

Javascript 如何解析json数组,javascript,json,Javascript,Json,我正试图解析类似这样的东西 { "popular result":[ {"term":"Summer","url":"http://summer.com"}, {"term":"Autumn","url":"http://autumn.com"}, {"term":"spring","url":"http://spring.com/"}, {"term":"winter","url":"http://winter.com/"}] } <script typ

我正试图解析类似这样的东西

{
"popular result":[
    {"term":"Summer","url":"http://summer.com"},
    {"term":"Autumn","url":"http://autumn.com"},
    {"term":"spring","url":"http://spring.com/"},
    {"term":"winter","url":"http://winter.com/"}]
}

<script type="text/javascript">
    $(document).ready(function () {

        $.getJSON('/Controls/GetPopularSearches', function (json) {
            for (var i = 0; i < json.length; i++) {
                $.each(myJson.i, function (key, value) {
                    alert(value.term);
                });​
            }

        });
    });
</script>
{
“大众结果”:[
{“术语”:“夏季”,“url”:http://summer.com"},
{“术语”:“秋天”,“网址”:http://autumn.com"},
{“术语”:“spring”,“url”:http://spring.com/"},
{“术语”:“冬季”,“url”:http://winter.com/"}]
}
$(文档).ready(函数(){
$.getJSON('/Controls/GetPopularSearchs',函数(json){
for(var i=0;i

但是什么也没发生!因为是数组中的数组!如果您获得如图所示的jsonObject,请告诉我如何执行此操作

 var JsonArray=json.popular; //get jsonArry
 $.each(JsonArray,function(i,val){
 // do logic
 }); 

要解析json,请使用json.parse()

数组和对象是不同的东西。在事情变得真正具有挑战性之前,你会想对它们进行更多的调查

假设
json
确实等于您提供的对象(在json中显示为
{}
),那么
json['popular result']
(如果没有空格,可以使用
)就是您要遍历的数组(在json中显示在
[]

出于某种原因,这种混乱让你在一个对象上循环(因为很少为它定义
length
),然后(忽略
myJson
)上的输入错误),你开始在不存在的东西上循环(这不会使b/c崩溃,因为它从来没有出现过)

清理它

<script type="text/javascript">
    $(document).ready(function () {
        $.getJSON('/Controls/GetPopularSearches', function (json) {
            for (var i=0;i<json['popular result'].length;i++) {
                alert(json['popular result'][i].term + ' points to the URL ' + json['popular result'][i].url);
            }
        });
    });
</script>

$(文档).ready(函数(){
$.getJSON('/Controls/GetPopularSearchs',函数(json){

对于(var i=0;i您不需要
$。每个
都需要循环数组集作为包含对象中的
流行结果
的值

$.getJSON('/Controls/GetPopularSearches', function (json) {
  var arr = json['popular result'];
  for (var i = 0, l = arr.length; i < l; i++) {
    console.log(arr[i].term);
  }
});
$.getJSON('/Controls/getPopularSearchs',函数(json){
var arr=json['popularresult'];
对于(变量i=0,l=arr.length;i
.

检查这把小提琴

var jsontext =
    '{"popularresult":[{"term":"Summer","url":"http://summer.com"},{"term":"Summer","url":"http://summer.com"}]}';
var getContact = JSON.parse(jsontext);

for (i = 0; i < getContact.popularresult.length; i++) {
    alert(getContact.popularresult[i].term);
}
var jsontext=
“{”popularresult:[{”术语“:“Summer”,“url:”http://summer.com},{“术语”:“夏季”,“url”:http://summer.com"}]}';
var getContact=JSON.parse(jsontext);
对于(i=0;i

那个
myJson
变量从何而来?什么是
myJson
应该代表的?不。真的没有理由使用。不要建议
evil()
,甚至不要考虑
evil()
。看在上帝的份上,不要把
evil()
拼错为
eval()
JSON.parse()
顺便说一句,它是原生JS。它与jQuery无关。免责声明:顺便说一句,不要把我之前的评论看得太重。只是给出一些建议;-)删除了Downvote。