我怎样才能以适当的符号迭代数组中的对象?
我读通过JavaScript的好部分,并了解到使用for (i in blah) {}
是坏的表示法,但问题是,我使用Node.js
和我使用MongoDB
的数据库返回所有的查询作为objects
这很好。 现在我有一个Ajax查询,从表中获取所有的信息,我想用每个值做事情。
但是数据库返回的是一个包含对象的数组(随机大小取决于数据库中的内容),为了清楚起见,我将给出一个示例:
[ { 'a': 'value of a', 'b': 'value of b', 'c': 'value of c' }, { 'a': 'value of a', 'b': 'value of b', 'c': 'value of c' } ]
我怎样才能遍历每一件事情,以便我可以从每一个variables分配这是我已经做了:
for (var i = 0; i < data.success.length; i += 1) { for(x in data.success[i]) { console.log(x); } }
我只是担心,坏记号最终会咬我,我读了(blah in blah)
记号并不总是按顺序返回结果。 这是必须的。 希望我明确表示感谢。
我需要获取值,而不是对象中的variables的名称。
Object.keys(data.success[i])
会给你一个对象中的所有键,然后你可以使用它来保证sorting顺序。
data.success.forEach(function(item, n) { console.log('item ' + n); Object.keys(item).sort().forEach(function(key) { console.log(key + ':' + item[key]); }); });