如何迭代对象中的编号属性?

我有一个超过700个属性全部编号的大对象。 我怎样才能遍历每个编号的属性?

{ '0': { emails: { categorized: [Object], all: [Object], primary: 'support@wish.com' }, id: '290cb70ea0f', updated: '2011-09-16T05:55:12.136Z' }, '1': { emails: { categorized: [Object], all: [Object], primary: 'VJONO@csnfo.com' }, id: '753ac508e1a00e', updated: '2012-07-12T22:23:11.196Z' }, '2': { title: 'Bryan Weston', phone_numbers: { categorized: [Object], all: [Object], primary: '' }, id: 'b4c0268d92825e', updated: '2010-10-13T08:00:32.834Z' }, // It goes on.... 

在纯粹的JavaScript会去这样的事情

 var data = { /*stuff*/ }; var item; for (var prop in data) { //hasOwn is probably not needed if( /*data.hasOwnProperty(prop) &&*/ !isNaN(prop) ) { //only do stuff if the property is a number item = data[prop]; //work } } 

用下划线你可以把它写在Mark的答案中,但是用类似的if(!isNaN(prop))_.isNaN检查

使用下划线。

 _.each(yourObject, function (item, index) { console.log(item.emails); console.log(item.title); // etc... }); 

尝试这个:

 var objectKeys = Object.keys(yourObject).map(Number); objectKeys.sort(); for(var i=0;i < objectKeys.length; i++) { key = objectKeys[i]; element = yourObject[key]; //do magic here } 

如果你不关心处理的顺序,你可以使用for(key in youObject)