ES6简介

1、ES6简介:

1)、ECMAscript 与 Javascript的关系:
ECMAscript是规范,而Javascript是规范的具体实现,两者不能相提并论。

2)、ECMA的几个重要版本:
ECMA这个组织在2015年之前,使用的都是ECMAscript 5这个版本;
ECMA在2015年6月份正式颁布ES6,而之后的版本变化不大,以后每年6月份颁布新
版本(这个组织提的一些新规定);
ECMA在2016年颁布的版本称之ES7

2、let 和 const:

1)、ES6之前定义变量的方式:
定义变量:
以前 var 能够变量提升
可以带var 也可以不带var

2)、ES6定义变量的方式:
let 声明变量
①. 没有变量提升,先声明后使用
②. 而且新特性当中必须先声明后使用,
③. 只能声明一次
④. 块级作用域。let没有函数作用域

不考虑IE的情况下,或者在我们的Node或者使用前端框架去写东西,就不要用var了

const 声明常量
值不能改变,其它和let特性是一样的
常量名一般都使用大写

let应用场景

拓展:

我们知道,在javascript中只有全局作用域和函数作用域,并不存在块级作用域。这样,在使用时就会出现一些问题。 下面我们先来举例说明let块级作用域的使用。

        {
            var a = 5;
            let b = 10;
        }
        console.log(a); //5
        console.log(b); //报错 b is not defined

3.解构赋值:

解构赋值
* 解构:解析结构
* 赋值:
数组解构(用的场景比较少)
两两数据交换
对象解构(用的场景比较多)

1)、数组解构:

        let arr1 = [11, 22, 33]
        let [a, b, c] = arr1
        console.log(a, b, c);//11 22 33  完全解构

2)、对象解构赋值:

        var obj = { username: 'admin', age: 18 }
        console.log(obj.username, obj.age); //admin 18

        let { username, age } = obj //对象解构简写形式 
        //完整形式为:{ username:username,age:age } = obj1
        console.log(username, age); //admin 18
        
        let { username: u, age: a, sex } = obj
        console.log(u, a, sex);//sex=undefined

3)、解构赋值的默认值:

        var [a,b] = [11]
        console.log(a,b)  //11 undefined
        //注意:默认值需要从后往前设置

        var [c, d = 18] = [11]
        console.log(c, d) //11 18
        //默认值生效 必须右边为严格undefined的时候

        var [x, y = 3] = ['aa', null]
        console.log(x, y); //aa null

 

4、模板字符串:简化字符串的拼接:

1). 模板字符串必须用“
2). 变量的部分使用${xxx}定义

console.log(`你好啊,这个模板字符串真好用 我叫${username},年龄${age} `)

5、对象的简写形式:

        var a = 1
        var b = 2

        var json = {
            a,  //简写形式
            b,
            fn1: function () {
                //函数简写和普通的写法性质是完全一样的
                console.log(this, 'fn1');
            },
            fn2() {
                console.log(this, 'fn2');
            }
        }

        console.log(json);
        json.fn1();
        json.fn2();

 

 

 

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容