gpt4 book ai didi

JavaScript - 对象中扩展运算符的放置/顺序是否重要?

转载 作者:行者123 更新时间:2023-12-01 15:04:41 24 4
gpt4 key购买 nike

在 JavaScript 中,展开运算符的放置和排序重要吗?

var item = {/* key value pairs here */};
var itemB = {/* key value pairs here */};

例如在下面的代码片段中将 newItem总是有相同的键值对?
var newItem = {
...item,
...itemB
};

作为
var newItem = {
...itemB,
...item
};

最佳答案

除了键值对的一般顺序,它对对象的结果并没有真正的重大影响之外,唯一的其他区别是如果 itemitemB有重复的键。

例如。

var item = {firstName: "Bob"};
var itemB = {lastName: "Smith", firstName: "Tim"};

在这种情况下,以下两项将不相同。
var newItem = {
...item,
...itemB
};
// {lastName: "Smith", firstName: "Tim"}

-
var newItem = {
...itemB,
...item
};
// {lastName: "Smith", firstName: "Bob"}

因此,如果有重复的键,则扩展运算符的顺序确实很重要。

如果您希望为对象提供默认键值对,这将特别有用。您可以将默认键值对放在扩展运算符之前,如果它们在扩展运算符中使用的对象中不存在,它将作为新对象的默认值。

关于JavaScript - 对象中扩展运算符的放置/顺序是否重要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51599517/

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