相关疑难解决方法(0)

对象传播与Object.assign

假设我有一个options变量,我想设置一些默认值.

这两种选择的好处/缺点是什么?

使用对象传播

options = {...optionsDefault, ...options};
Run Code Online (Sandbox Code Playgroud)

或者使用Object.assign

options = Object.assign({}, optionsDefault, options);
Run Code Online (Sandbox Code Playgroud)

这是让我惊讶的提交.

javascript ecmascript-6

343
推荐指数
9
解决办法
14万
查看次数

我不了解对象内的传播语法

我不了解对象内的传播语法。

console.log(...false) // TypeError not iterable
console.log(...1) // TypeError not iterable
console.log(...null) // TypeError not iterable
console.log(...undefined) // TypeError not iterable
Run Code Online (Sandbox Code Playgroud)

我理解上面的代码由于非迭代器而发生错误。

但是这些代码运行良好。

console.log({...false}) // {}
console.log({...1}) // {}
console.log({...null}) // {}
console.log({...undefined}) // {}
Run Code Online (Sandbox Code Playgroud)

请让我知道为什么上述代码有效。

javascript spread-syntax

4
推荐指数
2
解决办法
1242
查看次数

标签 统计

javascript ×2

ecmascript-6 ×1

spread-syntax ×1