玩命加载中 . . .

接收json数组报错使用JSON.parse()方法将数据(字符串)转化js对象


问题:接收json数组报错使用JSON.parse()方法将数据(字符串)转化js对象

问题:

在后端传给前端数据(JSON数组)时,JS通过Jquery遍历JSON数组时报以下异常:

JS:

var a = "[{\"id\":\"1\",\"name\":\"Jsck\"},{\"id\":\"2\",\"name\":\"Array\"}]";
$.each(a,function (i,value) {
    console.log(value);
})

Error:

Uncaught TypeError: Cannot use 'in' operator to search for 'length' in [{"id":"1","name":"Jsck"},{"id":"2","name":"Array"}]
    at isArrayLike (jquery.js:528)
    at Function.each (jquery.js:359)
    at test.html?_ijt=tkj0ksfomg7p7vvakpi2jlssuv&_ij_reload=RELOAD_ON_SAVE:15

解决方法:

在JS中需要用JSON中的parse()方法将JSON数组或JSON对象转换成JS对象在使用Jquery中的earch()方法遍历就不会报错了。

var a = "[{\"id\":\"1\",\"name\":\"Jsck\"},{\"id\":\"2\",\"name\":\"Array\"}]";
//使用JSON中的parse()方法将JSON转换成JS对象
$.each(JSON.parse(a),function (i,value) {
    console.log(value);
})

原因:

具体原因我也不知道,如果有大神看到此文章并且知道原因,请不惜赐教。


文章作者: 小靳同学
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 小靳同学 !
评论
 上一篇
Spring(01) Spring(01)
IOC控制反转概述:Spring 的主要作用就是为代码“解耦”,降低代码间的耦合度。 就是让对象和对象(模块和模块)之间关系不是使用代码关联
2022-01-04
下一篇 
UUID UUID
UUID概述UUID(Universally Unique Identifier)全局唯一标识符,是指在一台机器上生成的数字,它保证对在同一
2021-12-18
  目录