背景: 有两种结构:对象和数组,对象是没有 length 这个属性,而数组结构是有的,下面分别说下这两种结构之间的区别和遍历方式。
1. 对象
一个对象以 ”{“ 开始,”}” 结束。每个 ”key” 后跟一 ”:”,”‘key/value’ 对 ” 之间运用 “,” 分隔。
let myJson = {“name”: “timor”, “password”: “1111”};
for (var val in myJson) {
console.log(val + " " + myJson[val]);
}
输出结果如下:
2. 数组
数组是值的有序集合。一个数组以 ”[“ 开始,”]” 结束。值之间运用 “,” 分隔。
2.1 无规律 json 数组:
let json = [{AA: ‘aa’, BB: ‘bb’, cc: 123}, {DD: ‘dd’, EE: ‘ee’}];
for (var i = 0, l = json.length; i < l; i++) {
for (var key in json[i]) {console.log(key + ':' + json[i][key]);
}
}
输出结果如下:
2.2 有规律 json 数组:
let packJson = [
{"name": "timor", "password": "1111"},
{"name": "tony", "password": "2222"}
];
for(var i = 0; i < packJson.length; i++){
console.log(packJson[i].name + ":" + packJson[i].password);
}
也可以这样写:
for(var i = 0; i < packJson.length; i++){
console(packJson[i].name + ” ” + packJson[i].password);
}
输出结果如下: