我在输入处有一个对象,如何在现有对象的基础上返回修改后的对象?
我将Object.keys()
与迭代器map()
结合使用来实现此目的。但有些东西不起作用,我不确定。
let objjjj = {
a: 2,
b: 3,
c: 4
}
console.log(
Object.keys(objjjj).map((key, i) => {
key: objjjj[key] + 1
})
)
最佳答案
您需要一些括号将大括号括在 arrow functions 中.
否则,它将被视为 block 语句,其中发生 undefined
的标准返回。
要创建单个对象,您可以将单个对象分散到 Object.assign
.
let object = { a: 2, b: 3, c: 4 };
console.log(
Object.assign(...Object.keys(object).map((key, i) => ({ [key]: object[key] + 1 })))
);
当您需要键和值时,您可以采用 Object.entries
.
let object = { a: 2, b: 3, c: 4 };
console.log(
Object.assign(...Object.entries(object).map(([k, v]) => ({ [k]: v + 1 })))
);
关于JavaScript。无法用Object.keys()迭代一个对象来获取new,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50822496/