JSON取值(key是中⽂或者数字)⽅式详解先准备⼀个json对象⽤于演⽰
var json = {'name':'zhangsan', '年龄':23, 404:'你可能迷路了'};
1. 使⽤JS中with关键字
with(json) {
console.log(name);//输出:zhangsan
console.log(年龄);//输出:23
console.log(404);//输出:404,⽤这种⽅法读取key是数字的属性,有问题
}
2. 最常见的传统的读取key
console.log(json.name);//输出:zhangsan
//key是中⽂也是⽀持的
console.log(json.年龄);//输出:23
//key是Number类型或者String类型的数字都不能这么读取
console.log(json.404);//报错
3. 通⽤万能型:json['key']
console.log(json['name']);/输出:zhangsan
console.log(json['年龄']);//输出:23
console.log(json['404']);//输出:你可能迷路了
4. json[key]
console.log(json[name]);/输出:undefindedjs获取json的key和value
console.log(json[年龄]);//报错
console.log(json[404]);//输出:你可能迷路了
json处理动态key⽅式
先准备案例对象
var jsonArr = [
{"id": "1", "name": "A1"},
{"id": "2", "name": "A2"},
{"id": "3", "name": "A3"},
{"id": "4", "name": "A4"},
{"id": "5", "name": "A5"}
]
1. 如果数据量不⼤,偶尔查询⼀次,使⽤in遍历
2. 如果数据量⼤,经常使⽤,建⽴查表提升性能
/
/创建⼀个查表函数
function createLookMap(field) {
var map = {};//创建⼀个空的json对象
for (var i = 0; i < jsonArr.length; i++) {
var value = jsonArr[i];//将数组中的元素作为json对象的值
var key = value[field];//选取⼀个属性作为新的json对象的key
map[key] = value;
}
return map;
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。