问题标签 [spread-syntax]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
12904 浏览

javascript - 使用扩展运算符将对象添加到数组的开头

我有一个这样的数组:

我想要的是使用扩展运算符在该数组的开头添加一个新对象:

顺便说一句,这有效:

但是会生成一个像这样的键“newObj”:

如果我这样做,我希望自动生成密钥:

想象一下结果是这样的:

但这给了我一个错误。

现在我正在使用 unshift 并且它有效,我想知道是否有办法对传播运算符做同样的事情。

0 投票
4 回答
2823 浏览

javascript - 对象数组的传播语法无法按预期工作

我有一个反应组件,我试图将对象传播到构造函数中的状态中。

我想通过做来访问颜色this.state.shape0,但是当我控制台日志时this.state,我得到了这个:

在此处输入图像描述

而不是Object {shape0: "black", shape1: "black", shape2: "black"}.

我在这里做错了什么?

0 投票
0 回答
1858 浏览

javascript - 错误 TS2698:传播类型只能从对象类型创建。如何修复此错误?

我的反应应用程序中有一个 HOC 这是代码。

运行此应用程序时,我收到以下错误。

错误 TS2698:传播类型只能从对象类型创建。

当我传递 props 时,我的传播语法似乎存在问题{...this.props}

这就是我使用这个 HOC 的地方。

还要清楚这是一个编译时错误。

我哪里错了?

0 投票
1 回答
474 浏览

javascript - 如何将对象数组转换为具有索引的对象?

我有一个这样的数组->

我想将其转换为 ->

可能我不想要foreach。我们可以使用 Object.assign(arrayDetails, ...jsonResponse); 但是如何做对象索引呢?

0 投票
3 回答
2633 浏览

javascript - JSX 中 props 的顺序重要吗?

如果o对象包含以下键/值对:foo: 'bar'我可以依赖这些结果吗?:

换句话说,使用扩展运算符时属性的排序是否重要?

0 投票
1 回答
237 浏览

javascript - 在道具分配中使用扩展运算符时React Native收到错误:“在这种环境下,分配的目标必须是一个对象

我目前正在将 React 与 Redux 一起使用,当我运行以下命令时:

我收到上述错误,它似乎在返回方法中针对“...val”。我基本上是在尝试从 Firebase 中提取所有信息并将其返回到变量“员工”中。任何帮助将不胜感激,谢谢!

0 投票
3 回答
2010 浏览

javascript - 在数组中查找最大的相邻产品(JavaScript)

我试图了解以下解决方案,以在任何给定数组中查找最大的相邻产品。

例子:

JS中可能的解决方案:

我很难理解两件事:

  1. 这三个点到底做了什么,它是如何传递到函数中的?有没有办法以更容易理解的方式写这个?我知道这是 ES6 中的“扩展语法”功能,但仍然不完全理解。

  2. 为什么我们插入“1”作为切片的参数?我的第一个想法是输入“0”,因为我们想从头开始,然后遍历所有内容,看看哪个相邻的产品是最大的。

我将不胜感激任何建议、链接和解释。

谢谢。

干杯!

0 投票
1 回答
553 浏览

javascript - 使用保留关键字作为扩展运算符的对象键

假设我有一个看起来像这样的对象

现在说我使用传播运算符并做这样的事情

然后对于其他东西,我仍然得到一个对象,它是一个副本,props但键除外hello

但是如果我不想要delete对象的键怎么办?我不能像上面那样做,因为显然delete是保留关键字。

但是,我仍然可以从对象中过滤不等于“删除”的键并获取我的对象,但是有没有办法使用扩展运算符来做到这一点?

0 投票
1 回答
1525 浏览

typescript - 如何在打字稿元组中使用扩展运算符?

我想指定数组其余部分的外观,而不知道数组将有多少个值。我怎样才能实现这样的目标?(这里是游乐场版):

Type expected.但是,上面的代码在展开运算符处引发了错误。

我知道有一个建议,但我现在如何实现类似的行为?

0 投票
2 回答
4213 浏览

javascript - 是传播“语法”还是传播“运算符”?

我听说过...将它们称为“扩展语法”和“扩展运算符”,后者更受欢迎。相关MDN 文档的 URL表明它最初被称为扩展运算符,但后来更改为扩展语法,并且MDN 的运算符列表没有提及它。

谷歌似乎暗示运营商这个词更受欢迎和被接受,微软文档es6-features.org等网站都这样引用它。

如果有的话,哪个术语在 ECMAScript 的上下文中是最正确的,为什么?数组解构赋值呢?