zoukankan      html  css  js  c++  java
  • es6之解构赋值

    ---恢复内容开始---

    es6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构赋值。

      以前我们都是申明一个变量,然后给这个变量赋值,只能直接指定值。比如:

      var a = 1;  var b=2 ;  var c = 3;这样;

      而es6给我们带来了新的赋值写法,使我们在工作中,少写了很多代码。下面我们来看看es6是怎么赋值的。

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

      这样的代码表示,按照位置的对应关系对变量赋值。

      还可以这样:

      let [a , [ b , c ], d ] =  [1, [ 2, 3 ] , 4]

      let [x, , y] = [1, , 3]

      let  [x,...y] = [1,2,3,4]  x //1   y  // [2,3,4]

      这些都是可以解构成功的,如果解构不成功,就得到undefined,比如

      let [x,y] = ['a']    x  //a  y //undefined

      对象的解构赋值 

      var {bar,fo}  = {bar:'aaaa',fo:'bbb'}

      bar //'aaaa'

      fo //'bbb'

      对象的解构赋值与数组有一个重要的不同,数组的元素是按次序排列的,变量的取值由它的位置决定;

      而对象的属性没有次序,变量必须与属性同名,才能取到正确的值

      var {baz} = {foo:'aaa',bar:'bbb'}   //undefined

      由于右边的变量中没有对应的同名属性,所以解构失败;

     

      

      

      

  • 相关阅读:
    OCP-1Z0-新051-61题版本-20
    OCP-1Z0-新051-61题版本-19
    OCP-1Z0-新051-61题版本-17
    OCP-1Z0-新051-61题版本-18
    OCP-1Z0-新051-61题版本-16
    OCP-1Z0-新051-61题版本-15
    OCP-1Z0-新051-61题版本-14
    OCP-1Z0-新051-61题版本-12
    OCP-1Z0-新051-61题版本-13
    OCP-1Z0-新051-61题版本-11
  • 原文地址:https://www.cnblogs.com/maomao93/p/9064959.html
Copyright © 2011-2022 走看看