美文网首页
ES6简单语法

ES6简单语法

作者: Gracemark7 | 来源:发表于2017-03-21 22:21 被阅读0次

    一、ES6简介

    ECMAScript6.0(简称ES6)下一代标准,在2015年6月正式发布。目标:js语言编写复杂的大型应用程序,成为企业级开发语言。规定了浏览器脚本的标准。

    二、新增let、const命令 用来声明变量

    let声明的变量:1、没有声明提升,必须先声明再使用。2.不能重复定义

    为js新增加了块级作用域 ,在块级作用域中声明函数。声明变量。只有在代码块内有效。

    const声明变量。声明的常量。一旦声明,常量的值就不能改变。

    三、Class

    引入Class(类)这个概念

    创建对象

    ES5

    //构造函数法

    ES5与ES6的区别

    prototype对象的constructor属性,直接指向“类”的本身 ,与ES5行为是一致的。

    constructor方法是类默认的方法

    2、class的继承

    使用extents关键字 与ES5修改原型链相比清晰很多

    使用 super关键字 ,它在这里表示父类的构造函数,用来新建父类的this对象。

    ES5继承,实质是先创建子类的实例对象this,然后再讲父类的方法添加到this上面(Parent.apply(this))

    ES6继承,实质是先创建父类的实例对象this(所以必须先调用super方法),然后再用子类的构造函数修改this。

    ES6继承方法

    三、string

    新增模板字符串 ``

    用`` 反引号来标识起始,用${}来引用变量

    字符串自动解析变量

    ` my name is ${this.name}`

    四、Set和Map数据结构

    map的forEach()方法

    键、值

    Map.prototype【在控制台敲】

    map.forEach()

    map.keys()

    Set 集合  构造函数 就有原型 Set.prototype

    类数组结构

    唯一数组的集合

    五、for...of循环,作为遍历所有数据结构的统一方法、

    循环可以使用的范围包括数组、Set、和Map结构,某些类数组,以及字符串

    不支持对象遍历

    私有属性size

    案例:

    面试典型案例

    六、新增箭头运算符

    var priint = function(msg){

    console.log(msg)

    }

    print("1617");

    var print = (msg)=>{console.log(msg)}

    print();

    var print2 = () =>{

    console.log();

    }

    匿名函数简写形式

    //function(){}

    varstuList=[{name:"tom1",age:8},{name:"tom2",age:18},{name:"tom3",age:28}];

    //按年龄排序

    //    stuList.sort(function(a,b){

    //        return a.age > b.age;

    //    });

    stuList.sort((a,b)=>{

    returna.age>b.age;

    });

    document.body.onclick=e=>console.log(e.pageX+" "+e.pageY+this);

    varperson={

    name:"tom",

    say:() => console.log(this);

    }

    注意! 目前箭头形式匿名函数简写,

    函数执行时内部this始终代表window。

    七、总结

    目前并不是所有的浏览器都兼容ES6全部特性,用Babel可以将ES6码转为ES5代码。

    可以用20%的语法,在ES6的日常使用中占80%。

    相关文章

      网友评论

          本文标题:ES6简单语法

          本文链接:https://www.haomeiwen.com/subject/avbgnttx.html