gpt4 book ai didi

javascript - 我的对象扩展运算符使用有什么问题?

转载 作者:行者123 更新时间:2023-11-28 17:14:41 24 4
gpt4 key购买 nike

var color3 = {
name: 'Black',
type: 'special',
rating: 1
};

var rateColor3 = (colorName, Nrating) => ({ ...colorName, Nrating });
console.log(color3.rating); ///// 1
console.log(rateColor3(color3, 6).rating);//////1
console.log(color3.rating);//////1

我想使用对象扩展运算符,同时保持 color3 不可变,但我的第二个 console.log 的输出是 1 而不是 6,我做错了什么?

最佳答案

您正在将值6分配给对象的键NRating,而不是现有的评分

所以你的对象看起来像这样:

{
name: 'Black',
type: 'special',
rating: 1,
Nrating: 6
}

要覆盖现有的评级属性,您必须执行以下操作:

var rateColor3 = (colorName, Nrating) => ({ ...colorName, rating: Nrating });

或将参数N rating更改为 rating

var color3 = {
name: 'Black',
type: 'special',
rating: 1
};

var rateColor3 = (colorName, rating) => ({ ...colorName, rating });

console.log(rateColor3(color3, 6));

关于javascript - 我的对象扩展运算符使用有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53786052/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com