title: ES6 学习笔记 - Destructing
date: 2021-02-01 17:23:22
tags: 技术
解构赋值
ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,者被称为解构(Destructing)
数组的解构赋值
基本用法
var[a,b,c] = [1,2,3];
let[ , , third] = ["foo","bar","baz"];
let[x, , y] = [1,2,3];
let[head,...tail]=[1,2,3,4];
let[x,y,...z] = ['a'];
如果解构不成功,变量的值就等于undefined
Set
对于Set结构,也可以使用数组的解构赋值
let[x,y,z] = new Set(["a","b","c"])
指定默认值
[x,y='b'] = ['a']; // x='a',y='b'
[x,y='b'] = ['a',undefined]; //x='a' ,y='b'
如果不===
undefined,默认值是不会生效的
var [x = 1] = [null];
x //null