美文网首页React技术栈知识点总结
ES6 第二章 变量的解构赋值

ES6 第二章 变量的解构赋值

作者: 滨赫 | 来源:发表于2019-07-08 14:49 被阅读0次

第二章  变量的解构赋值

1.ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。

2.只要某种数据结构具有 Iterator 接口(后面会讲),都可以采用数组形式的解构赋值。

3.如果等号右边不是数组(严格的说不可解构)将会报错

4.对于set结构可以解构

(let[x,y,z]=newSet(['a','b','c']);x=a)

5.对象的解构赋值 :对象的解构与数组有一个重要的不同。数组的元素是按次序排列的,变量的取值由它的位置决定;而对象的属性没有次序,变量必须与属性同名,才能取到正确的值。

let{foo,bar}={foo:'aaa',bar:'bbb'};

对象的解构赋值是下面形式的简写

let{foo:foo,bar:bar}={foo:'aaa',bar:'bbb'};

6.解构赋值允许指定默认值。ES6 内部使用严格相等运算符(===),判断一个位置是否有值。所以,只有当一个数组成员严格等于undefined,默认值才会生效。

7.如果默认值是一个表达式,那么这个表达式是惰性求值的,即只有在用到的时候,才会求值。

8.默认值可以引用解构赋值的其他变量,但该变量必须已经声明。

9.与数组一样,解构也可以用于嵌套结构的对象。

10.对象的解构也可以指定默认值。默认值生效的条件是,对象的属性值严格等于undefined。

11.用途:

变量的互换:let x=1;let y=2;[x,y]=[y,x];

从函数返回多个值:function example(){return[1,2,3];} let[a,b,c]=example();

function example(){return{foo:1,bar:2};} let{foo,bar}=example();

函数参数的定义

// 参数是一组有次序的值

functionf([x,y,z]){...}f([1,2,3]);

// 参数是一组无次序的值

functionf({x,y,z}){...}f({z:3,y:2,x:1});

提取 JSON 数据

letjsonData={

id:42,status:"OK",data:[867,5309]

};

let{id,status,data:number}=jsonData;

console.log(id,status,number);

// 42, "OK", [867, 5309]

函数参数的默认值

jQuery.ajax=function(

url,{async=true,

beforeSend=function(){},

cache=true,

complete=function(){},

crossDomain=false

,global=true, 

// ... more config}={})

// ... do stuff

};

遍历 Map 结构

const map=newMap();

map.set('first','hello');

map.set('second','world');

for(let[key,value]of map){console.log(key+" is "+value);}

// first is hello

// second is world

输入模块的指定方法

const{SourceMapConsumer,SourceNode}=require("source-map");

相关文章

  • 解构赋值

    解构赋值:ES6 中新增了变量赋值的方式,从数组和对象中提取值,对变量进行赋值。 单独赋值给变量,解构赋值。 解构...

  • ES6

    ES6: ES6 新语法 1.变量 解构赋值 (解构赋值对应的python里的序列解包) 解构赋值方式一: 解构赋...

  • ES6笔记(解构赋值)

    ES6笔记(解构赋值) 解构赋值 变量的解构: 解构赋值允许指定默认值。 解构赋值必须保证赋值方 被赋值方类型一...

  • 『ES6脚丫系列』变量的解构赋值

    『ES6脚丫系列』变量的解构赋值 第一章:变量的解构赋值的概念 【01】Q:什么是变量的解构赋值?有哪些方式? 吃...

  • ES6知识点复习(二)

    变量的解构赋值 解构赋值允许指定默认值,es6内部使用严格相等运算符 === 默认值可以引用解构赋值的其他变量,但...

  • es6中的解构赋值

    es6中的对象解构赋值 对象的解构赋值,新变量名字要和对象中的变量名一致 数组中的解构赋值,数组是依次赋值的 字符...

  • ES6入门笔记

    变量的解构赋值 数组的解构赋值ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Dest...

  • ES6学习笔记——解构赋值

    变量的结构赋值 数组的解构赋值 ES6允许从数组中提取值,按照对应的位置,对变量赋值。 如果解构不成功,变量的值就...

  • 杂货小铺之ES6+ 🍳 解构赋值

    解构赋值 ? 在 ES6 中新增了变量赋值的方式:解构赋值。允许按照一定模式,从数组和对象中提取值,对变量进行赋值...

  • 26

    ES6 一、解构赋值 ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为结构赋值,解构赋值主要...

网友评论

    本文标题:ES6 第二章 变量的解构赋值

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