美文网首页
ES6学习笔记

ES6学习笔记

作者: 浪子归何处 | 来源:发表于2018-01-19 11:45 被阅读0次

    let和const

    function test(){

        //let a = 1;

        //console.log(a)

        for(let i=1;i<3;i++){

        console.log(i)//正常打印

        }

        console.log(i)//报错

    }

    test()

    let只在块作用域里面有效,ES6强制开启严格模式,变量未声明不能引用!切不能重复声明一个同名变量。

    const声明常量。声明即赋值,切不能再次赋值!这句话只适用于赋值的是一个非引用类型,如果const声明的常量为一个引用类型,如object,array,则可以修改值本身。例如:const obj = { a:2}, obj.a =1,这样是可以修改的!

    结构赋值

    左边一个结构,右边一个结构,左右一一对应,进行赋值。如果结构赋值在结构上没有配对成功,则变量就为undefined

    数组结构赋值:左右都是数组。

    {
        let a,b,rest;
        [a,b] = [1,2]
        let n,m,k;
        [n,m,...k] = [1,2,3,4,5,6]
        n=1,m=[2,3,4,5],k=6
    }

    {

        let a,b,c

        [a,b,c=3]=[1,2]

        现在a=1,b=2,c=3,如果c没有给默认值则为undefined

    }

    {

        let a=1;

        let b=2;

        [a,b]=[b,a]

    }

    {

        function f(){

         return [1,2]

        }

        let a,b

        [a,b] = f()

    }

    对象结构赋值:左右都是对象。

    {
        let a,b;
        ({a,b}={a:1,b:2})
    }

    {

        let metaData = {

            title:'abc',

            test:[{

                title:'test‘,

                desc:'description'

            }]

        }

        let {title:esTitle,test:[{ title:cnTitle}]} = metaData;

        esTitle = 'abc'  cnTitle = 'test'

    }

    字符串结构赋值:左边是数组,右边是字符串。

    布尔值结构赋值:对象结构赋值的一种

    数值结构赋值:对象结构赋值的一种

    函数参数结构赋值:数组结构赋值在函数参数的一种应用。

    正则表达式扩展

    字符串扩展

    相关文章

      网友评论

          本文标题:ES6学习笔记

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