let a = [{num:'1'},{num:'2'}];
let b = ['1','2'];
let c = b.map(i=>{num:i});
console.log(a);
console.log(c);
我希望变量c与a相同,但不会发生。为什么我不使用Object初始值设定语法?
答案 0 :(得分:2)
问题是经典的Javascript问题:箭头函数的内容被视为一个块,而不是函数文字,num
作为标签,而不是对象键。您需要将括号()
中的文字换行以使其正常工作:
let a = [{num:'1'},{num:'2'}];
let b = ['1','2'];
let c = b.map(i=>({num:i}));
console.log(a);
console.log(c);