首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >嵌套es6数组破坏?

嵌套es6数组破坏?
EN

Stack Overflow用户
提问于 2016-06-03 05:16:35
回答 3查看 7.2K关注 0票数 16

筑巢毁灭是可能的吗?

例如,我想要数组中的第一项,在该数组中,我想要该子数组的第一项。

给予:

代码语言:javascript
复制
let arr = [['foo'], ['bar']];

是否有更简单的方法:

代码语言:javascript
复制
let firstItem = arr[0][0];
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-06-03 05:19:14

啊搞清楚了:

代码语言:javascript
复制
let [[firstItem]] = arr;

这将是同等的。

票数 21
EN

Stack Overflow用户

发布于 2016-06-03 07:39:37

是的,可以对嵌套数组(和对象)进行重构。

让我们考虑这个嵌套数组[[1], [1, 2], [1, 2, 3]],它是一个2D数组。为了得到第一个子数组的第一个元素,

代码语言:javascript
复制
let [[x]] = [[1], [1, 2], [1, 2, 3]]

为了得到第二个子数组的第一个元素,

代码语言:javascript
复制
let [,[x]] = [[1], [1, 2], [1, 2, 3]]

在这里,逗号用于跳过元素。要获得第三个子数组的第二个元素,如下所示:

代码语言:javascript
复制
let [,,[,x]] = [[1], [1, 2], [1, 2, 3]]

如果要检索特定元素以及数组中的其余元素,可以使用rest运算符...。例如,要分别获得第三个子数组的第一个元素和其余元素,

代码语言:javascript
复制
let [,,[x, ...others]] = [[1], [1, 2], [1, 2, 3]] // x=1, others=[2, 3]
票数 12
EN

Stack Overflow用户

发布于 2021-06-28 12:36:58

在这里,我只是假设多个项目,只是为了使语法更加清楚。

代码语言:javascript
复制
let arr = [['foo','foo1'], ['bar','bar1']];
var a,b,c,d;
[[a,b],[c,d]] = arr;
console.log(a,b,c,d); // foo,foo1,bar,bar1
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37606427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档