ES6语法基础之变量解构赋值(数组)

ES6变量解构赋值,看下数组与es5等区别,ES6的新特性大大节省了代码量,使代码可读性大大提高!

数组声明对比

//ES5下数组声明的集中方式        
        var a=5,b=3,c=0;
        var arr=[a,b,c];
        console.log(arr)
        //ES6下数组声明简单多了
        var [x,y,z]=[7,8,9];//下标和值需要一一对应
        console.log('z:'+z);

另类的数组声明方式

//缺位的的对应也是可以的    
    var [n,,m]=[2,5,8];
    console.log("n:"+n);
    console.log("m:"+m);
    //另一种组合方式
    var [t,[a,g]]=[0,[3,5]];
    //泛指(除了对应的数组下标,其他全部组合赋值);
    var [a,...b]=[1,2,3,4,5,0];//a的对应1,..b对应其他
    console.log("a:"+a);
    console.log("b:"+b);//除了a对应的值,之外全部赋予b

ES6数组下标默认值解决

//数组指定默认值  下标(左侧),指定=="默认值",如果有对应值则被赋值,否则则是默认值    
    var [a,b,c="null",d="null"]=[1,0,5];
    console.log("c:"+c);
    console.log("d:"+d);

ES6和ES5解决数组元素默认值对比

     //es6解决默认值问题
    var arr=[1,2,3];
    var [a,b,c="null",d="null"]=arr;
    //es5解决默认值
    var a=arr[0];
    var b=arr[1];
    var c=arr[2];
    var d=arr[3];
    if(arr[3]){
    	d=arr[3];//arr[3]存在不,存在赋予d,否则给予默认值
    }else{
    	d="null";
    }

以上就是ES6变量解构赋值的数组部分,接下来介绍变量解构赋值的对象部分!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏python3

python 元组

当程序的变量,不希望被修改的时候,就可以用到了。比如数据库连接信息,如果被修改了,就会造成程序异常。

961
来自专栏Python

Python 里 and、or 的计算规则

引子: >>> print '' or 5 or 0 5 >>> print 5 and 4 4 >>> print '' or 5 or 0 and 4 5 ...

1899
来自专栏linux驱动个人学习

typeof关键字的作用

一、typeof详解: 前言:     typeof关键字是C语言中的一个新扩展,这个特性在linux内核中应用非常广泛。(其实这和C++的auto关键字和可以...

3385
来自专栏我爱编程

Day10面向对象高级编程1/3

使用slots 正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性。 class...

3335
来自专栏用户画像

正则表达式匹配 整数和正整数

?匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配 ? 字符,请使用 \?

852
来自专栏遊俠扎彪

C++中的字符数组、字符串、字符指针的一些笔记

1、sizeof会计算实际内存空间,strlen会计算C风格的字符串的实际字符数(不包括\0)。

19610
来自专栏星汉技术

原 荐 Scala的面向对象

----------目录--------------------------------------------------------- 1.Scala简介和...

30813
来自专栏深度学习思考者

一文搞懂C/C++中指针那些事(上篇)

一 指针变量 1.间接存取        指针变量的值为地址;普通变量的值为数据;其中“*”为指针运算符。&是地址操作符,用来引用一个内存地址。通过在变量名...

21810
来自专栏desperate633

LintCode 二进制中有多少个1题目分析

这种方法速度比较快,其运算次数与输入n的大小无关,只与n中1的个数有关。如果n的二进制表示中有k个1,那么这个方法只需要循环k次即可。其原理是不断清除n的二进制...

561
来自专栏程序生活

Python中defaultdict用法

2106

扫码关注云+社区

领取腾讯云代金券