在开发React应用程序时,我需要向一个组件发送一个条件属性,因此我找到了一个模式来实现这个功能,尽管这对我来说似乎非常奇怪,我不明白它是如何以及为什么起作用。
如果我键入:
console.log(...undefined) // Error
console.log([...undefined]) // Error
console.log({...undefined}) // Work
当对未定义的值使用展开运算符时,会引发错误。然而当未定义的值位于一个对象内时,会返回一个空对象。
关于这种行为,我感到相当惊讶。这确实是预期的行为吗?我能否依赖它,并且这是一种好的实践吗?
null
或undefined
而抛出异常,因为在这些值上没有办法实现所需的方法。我不知道对象展开语法为什么能够工作。 - llamastage-0
,所以我认为它不是 ES6.. 这个扩展特性会成为 ES7 吗? - Keith