美文网首页日常刻书
数组解构、混合结构以及参数结构

数组解构、混合结构以及参数结构

作者: F_wind | 来源:发表于2021-01-23 10:46 被阅读0次

《深入理解ES6》阅读随笔

数组解构

数组解构跟对象解构类似,同样具有数据提取、解构赋值、设置默认值、嵌套解构等特性。但是在提取数组时,有点区别,数组解构是通过数组位置来定位元素。因此在提取时,只需关注位置即可,可以任意重命名。下面是几个在 ES6 中实现对象解构的例子:
提取

// 定义一家人
let family = ["Tom","Lucy","Jack"]
// 声明
let [child,,father] = family // 想跳过第二个元素直接取第三个,可以在第二个位置上使用一个空的占位符
console.log(child, father) // Tom Jack

赋值

// 定义一家人
let family = ["Tom","Lucy","Jack"],mother="Lily",father="John"
// 解构赋值
[mother,father] = family
console.log(mother,father) // Lucy Jack

设置默认值

// 定义一家人
let family = ["Tom","Lucy","Jack"]
// 设置默认值
let [,,,dog="Wangcai"] = family  
console.log(dog) // Wangcai

嵌套解构

// 定义一家人
let family = ["Tom",["Luck","Jack"],"Wangcai"]
// 嵌套解构
let [child,[mother,father],dog]=family
console.log(child,mother,father,dog) // Tom Luck Jack Wangcai

注意:数组解构跟对象解构一样,同样需要完成初始化操作;
拓展:新的数组解构还有一个变量交换的功能,而在之前 ES5 中时需要借助中间变量来完成该操作的:

let a=3,b=4;
[b,a]=[a,b]
console.log(a,b) // 4 3

混合解构

对象解构与数组解构有很多类似之处,事实上,它们还可以混合在一块一起解构。下面是一个例子:

let family = { child: "Tom", parents: ["Lucy", "Jack"] };
let {
  child,
  parents: [mother],
} = family;
console.log(child, father); // Tom Lucy

参数结构

在函数表达式中,同样可以把对象解构、数组解构以及混合解构的思想拿过来,用于参数解构。下面是一个例子:

const getFatherInfo = ({ child, parents: [mother, father ] }) => {
  return child  + "," + mother+ "," + father;
};
console.log(getFatherInfo({ child: "Tom", parents: ["Lucy", "Jack"] })); // Tom,Lucy,Jack

相关文章

  • 数组解构、混合结构以及参数结构

    《深入理解ES6》阅读随笔 数组解构 数组解构跟对象解构类似,同样具有数据提取、解构赋值、设置默认值、嵌套解构等特...

  • 深入理解ES6--5.解构:更方便的数据访问

    主要知识点:对象解构、数组解构、混合解构以及参数解构 1. 对象解构 对象解构语法 对象解构语法在赋值语句的左侧使...

  • 3.解构赋值

    解构的分类 对象解构 数组解构 混合解构 解构参数 对象解构 解构赋值 嵌套对象解构 数组解构 数组解构 选择性的...

  • ES6系列 (十)解构参数

    疑惑: 如何解构数组参数? 如何解构对象参数? 如何模拟命名参数? 如何创建别名参数? 解构数组参数 假如有一个 ...

  • ES6学习笔记

    1. 变量的解构赋值 数组解构 对象解构 2. 箭头函数,rest参数 箭头函数 rest 参数 3. 数组: 扩...

  • ES6解构赋值、交换两个变量的值、设置函数默认值、模板字符串、箭

    1,解构赋值 解构赋值主要包括数组的解构赋值、对象的解构赋值、字符串的解构赋值、函数参数的解构赋值。 (1)数组的...

  • 解构赋值,设置函数默认值,箭头函数

    1,解构赋值 解构赋值主要包括数组的解构赋值、对象的解构赋值、字符串的解构赋值、函数参数的解构赋值。 (1)数组的...

  • ES6系列 (六)解构

    目标 解构对象 解构数组 结合数组解构和对象解构 了解解构的类型 思考 解构对象 使用解构语句解构数据结构,提取n...

  • 解构赋值

    1 数组的解构赋值 2 对象的解构赋值 3 奇葩结构的解构赋值 对于数组而言 最要两边结构相同也适用解构赋值

  • 函数扩展

    1、参数给定默认值 2、剩余参数 3、函数传参数的同时可以解构 3.1数组解构 3.2对象解构

网友评论

    本文标题:数组解构、混合结构以及参数结构

    本文链接:https://www.haomeiwen.com/subject/odwyzktx.html