有人可以解释这种动态对象散布运算符的语法吗?

时间:2019-08-31 23:50:27

标签: javascript syntax

我有一个 object ,需要在范围中存在值时动态地添加键。

{
        ...someValue && {value: someFunction(value) }
}

如果存在someValue,则在通过value

运行后,密钥someFunction将被添加到对象

由于某种原因,将传播算子放在value键之前对我来说更有意义,像这样:

        someValue && ...{value: someFunction(value) }

但是这当然是错误的吗?

有人可以解释其背后的语法吗?

1 个答案:

答案 0 :(得分:0)

对象文字只能包含:

(1)键值对,例如exec sp_executesql N'update CashIn set [ -- then all Fields = matching param then list of params and values.

(2)展开的对象(左侧为prop: 'val',右侧为对象/表达式)

如果有的话

...

这是无效的,因为不能将{ someValue && ... { value: 'val' } } 单独评估为键值对的开始或扩展表达式的开始。