美文网首页
变量的解构赋值

变量的解构赋值

作者: 可可布布 | 来源:发表于2019-12-09 10:38 被阅读0次

    基本用法

    ES6允许按照一定的模式,从数组和对象中取值,对变量进行赋值,这被称为解构。
    以前,变量赋值,只能是直接指定值

    let a = 1;
    let b = 2;
    let c = 3;
    

    ES6 允许写成下面这样。

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

    这种写法属于 模式匹配 只要等号两边的模式相同,左边的变量就会被赋予对应的

    默认值

    解构允许有默认值

    let [a, b = '456'] = ['123'];   // a = '123', b = '456'
    let [a, b = '456'] = ['123', null];   // a = '123', b = null
    let [a, b = '456'] = ['123', undefined];   // a = '123', b = '456'
    

    ES6严格按照运算符(===)的原则,判断一个位置是否有值, 当数组成员严格等于 undefined时 默认的值才会生效, 所以第二条 b = null 默认值不生效

    对象的解构赋值

    let { foo, bar } = { foo: 'aaa', bar: 'bbb'}; 
    // foo  'aaa'   
    // bar 'bbb'
    

    对象的解构与数组的解构有一个重要的不同。数组的元素是按次序排列的,对象不是。变量必须与属性名称相同,才能取到值。

    对象的解构赋值,可以很方便的将现有对象的方法,赋值到一个变量。

    相关文章

      网友评论

          本文标题:变量的解构赋值

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