{ 12: a, 32: b, 43: c}需要转换成[{12:a}, {32:b}, {43: c}]eslint好像禁止使用for in;谢谢各位了
3 回答
慕斯709654
TA贡献1840条经验 获得超5个赞
// 最好不用`for-in`,`for-in`会把原型链的所有可枚举的属性枚举出来。
// 可以用ES5的`Object.keys()`,只枚举当前对象的可枚举是属性。
var obj = { 12: 'a', 32: 'b', 43: 'c'};
var result = Object.keys(obj).map((el) => {
return {[el]: obj[el]};
});
console.log(result);
// 也可以使用`ES8`的`Object.entries()`
var result2 = Object.entries(obj).map(el => {
console.log(el[0], el[1]);
return {[el[0]]: el[1]};
});
console.log(result2);
泛舟湖上清波郎朗
TA贡献1818条经验 获得超3个赞
var obj={ 12: "a", 32: "b", 43: "c"};
var arr=[];
for(var i in obj){
if(i==undefined){
break
}
var tt={};
tt[i]=obj[i];
arr.push(tt)
};
console.log(arr);//[{12:"a"},{32:"b"},{43:c}]
添加回答
举报
0/150
提交
取消