我可以在es6数组解构中使用什么作为占位符?

时间:2016-01-29 14:30:26

标签: javascript ecmascript-6 syntactic-sugar

我不喜欢这里的, ,

let colors = [ "red", "green", "blue" ];
let [ , , thirdColor] = colors;

我可以使用一些占位符字符吗?我宁愿不介绍未使用的变量,我只想让代码看起来更清晰。现在我唯一能想到的就是评论:

let [/*first*/, /*second*/, thirdColor] = colors;

有更好的想法吗?

1 个答案:

答案 0 :(得分:8)

JS中没有占位符的概念。通常_用于此,但实际上您不能在一个声明中多次使用它:

let [_, secondColor] = colors; // OK
let [_, _, thirdColor] = colors; // error

此外,_实际上可能会在您的代码中使用,因此您必须提出其他名称等。

最简单的方法可能是直接访问第三个元素:

let thirdColor = colors[2];
let {2: thirdColor, 10: eleventhColor} = colors;