ES6笔记

1.声明与表达式:

    (a)  let: 作用域在块里面

    (b)  var: 全局  注意 函数有自己的作用域

    (c) const: 常量

        (1)常量的值 是不能被更改的

        (2)可以使用 const 来做预定义 处理

        (3)应用场景

          1.私有协议

            a.即时通讯

            b.与硬件通讯

          2.预定义数据值  网路接口

    2.解构赋值

      (1)定义:

        解构赋值是对赋值运算符的扩展。

他是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。

在代码书写上简洁且易读,语义更加清晰明了;也方便了复杂对象中数据字段获取。



      (2)数组格式的解构赋值

        1.基本

          let [a,b]=[2,3];

          let [username,age] = ["小明",4];

        2.可嵌套

          let [username,[boy,girl],age] = ["小明",["哈利","波特"],15];

        3.可省略

          /*

* 可以省略部分变量名

* */

let [a,,,,b]= [2,3,5,6];

console.log(a)

console.log(b)


        4.不完全解构

          /*

*不完全解构

* 可用于 不需要初始化赋值的变量

* */

let [view = document.createElement("div"),timer] = [];


        5.剩余运算符

          /*

* 剩余运算符

*

* */

var [timer,...views] = [0,[document.createElement("div"),document.createElement("div")]]

console.log(views[0][0]);

        6.字符串

          // 字符串

let [a, b, c, d, e] = 'hello';

// a = 'h'

// b = 'e'

// c = 'l'

// d = 'l'

// e = 'o'

console.log(a,b,c,d,e);

      (3)对象模型解构

        /*

* 对象模型 解构的基本方式

* */

let {foo,bar} = {foo:"aaa",bar:"bbb"};

console.log(foo,bar);


        2.可嵌套

{

    let {a:[b,c]} = {a:[22,44]};

    console.log(b)

    console.log(c)

    let {key:[name1,name2]} = {key:["属性1的值","属性2的值"]};

    console.log(name1)

    console.log(name2)

    let{

        listener:[

            click,

            dlclick,

            tapstart

        ],

        event:[ce, de, te]

    }={

        listener:[

            function () {

            console.log("click")

            },

            function () {

            console.log("dlclick")

            }

        ],

        event:[{name:"点击"},{name:"双击"}]

    }

    click();

    console.log(ce)

        3.可省略

let {key:[]} = {key:[2,3]}

let {key:[]} = {key:[2,3],key2:"dfghj"}

let {} = {key:[2,3]}

        4.剩余运算符

let {a, b, ...rest} = {a: 10, b: 20, c: 30, d: 40};

// a = 10

// b = 20

// rest = {c: 30, d: 40}

你可能感兴趣的:(ES6笔记)