我正在尝试在节点v8.3.0中的对象上使用spread,但它无法正常工作。切换到最新的LTS版本(v8.9.1),仍然没有运气。据我所知,扩展分配仅适用于阵列或迭代,因为节点v6,但显然v8.3.0带有对象扩展。任何人都可以证实这一点,如果是的话,它能为你效力吗?
例如,
const data = {
custom_data1: "NodeJS",
custom_data2: "Spring",
custom_data3: "Kitura"
}
console.log(...data) // this returns 'undefined is not a function'.
更新:我在之前的帖子中提到了解构,搞砸了。我的意思是传播。谢谢那些纠正我的人!欣赏它。
答案 0 :(得分:4)
在目标上放置花括号。它应该是:
var data = {
custom_data1: "NodeJS",
custom_data2: "Spring",
custom_data3: "Kitura",
};
console.log({ ...data });
答案 1 :(得分:0)
var data1 = {
custom_data1: "NodeJS",
custom_data2: "Spring",
custom_data3: "Kitura"
}
var data2 = {
new_key: "Spring",
custom_data3: "Overwrite"
}
console.log({...data, ...data2})
试试这个