es6学习2

来源:互联网 发布:mac版tomcat下载 编辑:程序博客网 时间:2024/06/03 17:32
一、数组、对象、字符串、数值与布尔值的解构赋值
可以指定默认值
默认值生效的条件是,对象的属性值严格等于undefined。
解构赋值的规则是,只要等号右边的值不是对象或数组,就先将其转为对象。由于undefined和null无法转为对象,所以对它们进行解构赋值,都会报错。
二、用途
  1.交换变量的值
let x = 1;
let y = 2;

[x, y] = [y, x];
 
  2.从函数返回多个值
  3.函数参数的定义
  4.提取JSON数据
let jsonData = {
id: 42,
status: "OK",
data: [867, 5309]
};

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

console.log(id, status, number);
// 42, "OK", [867, 5309]

5.函数参数的默认值
6.遍历Map结构
Map结构原生支持Iterator接口,配合变量的解构赋值,获取键名和键值就非常方便。
var map = new Map();
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

如果只想获取键名,或者只想获取键值,可以写成下面这样。
// 获取键名
for (let [key] of map) {
// ...
}

// 获取键值
for (let [,value] of map) {
// ...
}

7.输入模块的指定方法
原创粉丝点击