gpt4 book ai didi

javascript - JavaScript 中的双括号有什么作用?

转载 作者:行者123 更新时间:2023-12-01 01:11:55 26 4
gpt4 key购买 nike

我在下面附加了一个函数。我对这一行特别困惑:

  , results = [[letters.shift()]] 

在这种情况下双括号有什么作用?

function stringPermutations(str) {
let letters = str.split('')
, results = [[letters.shift()]]
while (letters.length) {
const currLetter = letters.shift()
let tmpResults = []
results.forEach(result => {
let rIdx = 0
while (rIdx <= result.length) {
const tmp = [...result]
tmp.splice(rIdx, 0, currLetter)
tmpResults.push(tmp)
rIdx++
}
})
results = tmpResults
}
return results
.map(letterArray => letterArray.join(''))
.filter((el, idx, self) => (self.indexOf(el) === idx))
.sort()
}

最佳答案

外部的 [ ] 创建一个数组。在该数组内部,内部 [ ] 创建一个新数组。因此,结果是数组中的一个数组。外部数组的第一个(也是唯一的)元素是内部数组。内部数组的第一个(也是唯一的)元素是 shift() 调用的结果。格式很好,应该会变得更清晰:

[
[
letters.shift()
]
]

因此,双括号在 JavaScript 中并不是特殊的构造。

关于javascript - JavaScript 中的双括号有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55088081/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com