怎样取出JSON字符串数组对象中的某个键名的键值 |
您所在的位置:网站首页 › 如何输出数组中的字符串 › 怎样取出JSON字符串数组对象中的某个键名的键值 |
前言:说白了,用双引号括起来的数组就是字符串数组,也就是我们常见的JSON数据,在我们的实际开发中,很多情况下,后端返回过来的数据都是json数据,所以当我们在使用这些数据的时候,先要把它转换成js对象,再来操作。 首先我们先了解一下什么是JSON数据?JSON (JavaScript Object Notation) 一种简单的数据格式,比Xml更轻巧。JSON 是JavaScript原生格式,这意味着在JavaScript中处理JSON数据不需要任何特殊的API 或者工具包。JSON的规则很简单:对象是一个无序的“名称/值”对集合。一个对象以"{"(左括号)开始,“}”(右括号)结束。每个"名称"后跟一个":"(冒号);“名称/值”对之间使用","(逗号)分隔。 它是一种严格的JS对象的格式,JSON属性名称必须有双引号,如果值是字符串,也必须是双引号; JSON数据与JS对象的区别 区别JSONJavaScript含义仅仅是一种数据格式表示类的实例传输可以跨平台传输数据,速度快不能传输表现1、值是以键值对的方式,键名和键值都必须加双引号2、值不能是方法函数,不能是undefined / NaN1、值也是键值对方式,键名不加双引号2、值可以是函数、对象、字符串、数字、boolean等相互转换JSON转换JS对象1、JSON.parse(Jsonstr); 不兼容IE72、eval("("+Jsonstr+")"); 兼容所有浏览器,但不安全js对象转换JsonJSON.stringify(jsObj);其他调用JSON官网的JS,实现parse和stringify在谷歌浏览器的兼容总而言之,你可以理解JSON是JS下的数据格式,他从属于JS,并且在处理JSON数据时可以直接使用JS内置的API方法; 接下来说正事,我昨天遇到的一个问题加入后端返回过来的数据如下: data:{ arrList:[{carousel:"[{"url":"http://img.nodebook.jpg"}]"}] }从上面代码我们可以知道,返回的是一个 data对象,data对象里面有一个arrList数组,数组里面的值又是以对象的形式存在,对象中有一个carousel属性,carousel属性的值就是 以JSON数据格式存在的。 昨天我想取到url的值,却怎么也取不到,到后来发现是我东西搞错了。 我昨天是这样取的, data.arrList[0].carousel[0].url 到后来才发现,carousel 的属性值并不是一个数组,要经过处理才能取到。 JSON转换为JS数组; JSON.parse(data.arrList[0].carouse)[0].url 这样才能取到url的值 打印console.log(JSON.parse(data.arrList[0].carouse)[0].url) 打印结果: http://img.nodebook.jpg 附上图片: 转换之前,图片显示不出来 转换之后 现在图片也出来了; |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |