我有这个json文件:
test.json
:
{"rows" : [
{"key": "value"},
{"key": "value"}
]
}
我尝试下面的代码来阅读它:
var json = require('test.json');
for (var row in json.rows) {
console.log(row.key);
}
它打印:
/usr/local/bin/node json-parser.js
undefined
undefined
我究竟做错了什么?
哪里row
是变量保持性名称而不是对象,所以你需要使用属性的名称进行检索(参见:for...in
循环文件)。在您的情况下,它将是数组的索引。这里不需要使用for...in
迭代器,简单的for循环就足够了。
for (var row in json.rows) {
console.log(json.rows[row].key);
}
var json = {
"rows": [{
"key": "value"
}, {
"key": "value"
}]
};
for (var row in json.rows) {
console.log(json.rows[row].key);
}
用一个简单的for循环
for (var i=0;i < json.rows.length; i++) {
console.log(json.rows[i].key);
}
var json = {
"rows": [{
"key": "value"
}, {
"key": "value"
}]
};
for (var i = 0; i < json.rows.length; i++) {
console.log(json.rows[i].key);
}
由于该属性持有数组useArray#forEach
方法,因此需要进行迭代。
json.rows.forEach(function(v){
console.log(v.key);
}
var json = {
"rows": [{
"key": "value"
}, {
"key": "value"
}]
};
json.rows.forEach(function(v) {
console.log(v.key);
})
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句