如何使用Object.key()进行下面的for循环?
for ( const obj in selectedObject) {
objAdmin[ obj ] = this.adminData.find( function dataInEventType( eT ) {
return eT[ 'Event Type' ] === newSelectedFilters[ obj ].LabelText;
} );
}
答案 0 :(得分:1)
尝试使用此forEach
来迭代数组
Object.keys(selectedObject).forEach(function(a){
objAdmin[ a ] = this.adminData.find( function dataInEventType( eT ) {
return eT[ 'Event Type' ] === newSelectedFilters[ a ].LabelText;
})
答案 1 :(得分:1)
Object.keys()返回对象中可枚举键的列表,它与
几乎相同var keys = [];
for(var prop in obj) {
if(obj.hasOwnProperty(prop)) keys.push(prop);
}
return keys;
这意味着您可以遍历Object.keys()
for(var i = 0; i < keys.length; i++) {
// Do stuff with keys[i]
}
重要的是要知道在ES5中定义Object.keys()
并且像IE9这样的传统浏览器不支持此方法,但如果您想支持旧浏览器,我上面提供的功能可以用作替代品。
值得注意的是for
和forEach
之间存在差异...我倾向于使用for
能够break
离开循环需要的。
答案 2 :(得分:0)
Object.keys(selectedObject).forEach(function(obj){
objAdmin[ obj ] = this.adminData.find( function dataInEventType( eT ) {
return eT[ 'Event Type' ] === newSelectedFilters[ obj ].LabelText;
} );
}