美文网首页
ES6 学习(数组解构篇)

ES6 学习(数组解构篇)

作者: 淡淡的真 | 来源:发表于2016-08-05 15:17 被阅读0次

    - 数组解构赋值

    解构例子

    let [a, ...b] = [1, 2, 3];
    a//  1
    b//  [2, 3]
    

    错误解构例子

    let [a] = 1;
    let [a] = false;
    let [a] = NaN;
    let [a] = undefined;
    let [a] = null;
    let [a] = {};
    

    解构赋值允许指定默认值

     let [a= 1] = [];
    a//  1
    let [a, b=2] = [1];
    a//  1
    b//  2
    

    ES6 内部使用严格相等运算符(===)判断一个位置是否有值,如果一个数组成员不严格等于 undefined ,默认值就会失效

    let [a = 1] = [undefined];
    a  //  1
    let [a = 1] = [null]
    a  // null
    

    如果默认值是一个函数,那么函数只会在有需要才会去求值

    function fn(num){
      console.log(num);
      return num;
    }
    let [a = fn(1)] = [10];  // 不执行函数
    let [b = fn(2)] = [];  // 执行函数
    a  // 10
    b  // 2
    

    相关文章

      网友评论

          本文标题:ES6 学习(数组解构篇)

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