【发布时间】:2021-10-15 00:35:35
【问题描述】:
我在 JavaScript 中遇到过以下问题:
const [x1, ...[result]] = [3, 4, 5]
console.log([result])
我知道 x1 是 3,但是为什么记录结果是 [4] 而不是 [4,5]?
【问题讨论】:
-
result是4,而不是[ 4 ]。[ result ]永远不能是[ 4, 5 ]。它的行为似乎与const [first] = array;类似;在这种情况下,它似乎将[ 3, 4, 5 ]的其余部分,即[ 4, 5 ]扩展到...[result],然后将[ 4, 5 ]解构为[ result ];因此result是4。
标签: javascript destructuring spread-syntax