Day17 ES6 扉页

  • 常量
// ES5定义只读变量
Object.defineProperty(window,'PI3',{
  writable: false,
  value: "3.14159"
})
// ES6定义制度变量
const PI2 = '3.14159'
  • 作用域
    ES3、5用立即执行函数控制作用域
    ES6用关键字语法let const形成块级作用域
  • 箭头函数
    主要改变this指向
  • 默认参数
    可接收函数传值
    比如控制必传参数

arguments 是伪数组
通过Array.prototype.slice.call(arguments)把arguments转换为数组来使用

// 利用扩展运算符接收多个参数
function getMultipleParams(...a){}
getMultipleParams(1,2,3);
//利用扩展运算符合并数组
var params = ['hello',true,7];
var other = [1,2,...params];
console.log(other); //[1,2,'hello',true,7]
  • 对象代理
    通过中间层代理,不会影响原始数据
let Person = {
  name: 'es6',
  sex: 'male',
  age: 15
};

let person = new Proxy(Person,{
  get(target,key){
    return target[key];
  },
  set(target,key,value){
    if(key!=='sex'){
      target[key]=value;
    }
  }
})

其他语法

  • 解构赋值
  • 模板字符串
  • 正则扩展
  • 数字扩展
  • 函数扩展
  • class
  • Module
  • Symbol
  • 对象扩展
  • Set Map
  • Iterator
  • Generator

你可能感兴趣的:(Day17 ES6 扉页)