前端笔记——ES6(2)

解析赋值

对具有 Iterator 接口的数据结构都(数组、对象、MAP、SET、Generator)可以进行解析赋值。其他类型会先尝试转换为对象或者数组再进行解析赋值。
解析赋值可以设置默认值,当对象属性为 undefined

  let [x,y,z]=[1, 2, 3]; // x=1,y=2,z=3
  let [a,...b] = [1,2,3]; // a=1,b=[2,3]
  let {m, n, o='zzz', p='zzz'} = {m: 'xxx', n: 'yyy', o: null}; // m:'xxx',n:'yyy',o:null,p:'zzz'
  let [a, b, c, d, e]='hello';

字符串

模板字符串,使用反引号`包裹字符串,其中可以使用${}引用变量、表达式或者调用函数。

 let obj = {name: 'Kimi', age: 18};
 console.log(`My name is ${obj.name}, ${obj.age} years old`);