es6新特性

新增内容:

1、let,const,import,class变量声明语法(es5只有:var,function)

2、块级作用域

3、引入global对象

4、变量的解构赋值

5、遍历器Iterator和for...of循环遍历

6、字符串、正则、数值、函数、数组、对象的扩展

7、原始数据类型Symbol

8、Set(类似数组),WeekSet、Map(类似对象),WeekMap

9、Proxy代理拦截,Reflect对象

10、异步编程解决方案:Promise对象和Generator函数

11、模块(module)体系

一:函数的扩展:

  函数默认值:

  用法:function log(x, y = 'World') {
      console.log(x, y);
  }
注意点:1、定义了默认值的参数,必须是函数的尾部参数,其后不能再有其他无默认值的参数
     2、undefined触发默认值,但null不会触发:
      
function foo(x=5, y=6){ console.log(x,y); }foo(undefined, null)// 5 null
    
 3、指定了默认值后,length属性将失真:(function(a, b, c=5){}).length // 2
    4、参数默认值所处的作用域,不是全局作用域,而是函数作用域。
 rest参数: 多余的参数
 注意点:同上1,3;

箭头函数:
函数柯里化: 常见作用:1. 参数复用2. 提前返回;3. 延迟计算/运行
 

 

 

posted @ 2018-01-02 16:57  下一秒钟已经不同  阅读(374)  评论(0)    收藏  举报