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

变量的解构赋值

作者: Home_2453 | 来源:发表于2019-03-05 16:54 被阅读0次

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

1、数组的解构赋值

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

上面的代码表示,可以从数组中提取值,按照对应位置,对变量赋值。
默认值:
解构赋值允许存在默认值

let [foo = true] = [];
foo  //  true
let [x,y = 'b'] = [x = 'a'];
// x = 'a' , y = 'b'

2、对象的解构赋值

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

对象的解构与数组有一个重要的不同。数组的元素是按次序排列的,变量的取值由它的位置决定;而对象的属性没有次序,变量必须与属性同名,才能取到正确的值。

let obj = {
        a:1,
        b:2,
        c:3
}
let {a,b,c} = obj;
//a = 1 , b = 2 , c = 3;

3、字符串的解构赋值
字符串也可以解构赋值。这是因为,字符串被转换为一个类似数组的对象。

let [a,b,c,d,e] = 'hello';
a // 'h'    b // 'e'    c // 'l'    d 'l'    e 'o'

4、函数的解构赋值
函数的参数也可以使用解构赋值

function fun([a,b]){
   console.log(a + b)
}
fun([1,2]);

函数的解构赋值也能使用默认值
5、解构赋值的用处
解构赋值对提取JSON对象中的数据,尤其有用

let jsonData = {
    id:42,
    status:'ok',
    data:[123,456]
}
let { id,status,data:number } = jsonData;
console.log( id,status,number );
//  42,'ok',[123,456]

相关文章

  • 解构赋值

    解构赋值:ES6 中新增了变量赋值的方式,从数组和对象中提取值,对变量进行赋值。 单独赋值给变量,解构赋值。 解构...

  • ES6笔记(解构赋值)

    ES6笔记(解构赋值) 解构赋值 变量的解构: 解构赋值允许指定默认值。 解构赋值必须保证赋值方 被赋值方类型一...

  • 变量的解构赋值

    数组的解构赋值: 解构,就是从数组和对象中提取值,然后对变量进行赋值 解构赋值: 解构不成功,变量的值就等于und...

  • ES6系列之变量的解构赋值

    本篇目录: 数组的解构赋值变量声明并赋值时的解构变量先声明后赋值时的解构不完全解构默认值交换变量解析一个从函数返回...

  • 解构赋值

    解构赋值 数组的解构赋值 嵌套,默认值,展开符 对象的解构赋值 对象解构赋值的本质与简写 对象解构的模式与变量 对...

  • 『ES6脚丫系列』变量的解构赋值

    『ES6脚丫系列』变量的解构赋值 第一章:变量的解构赋值的概念 【01】Q:什么是变量的解构赋值?有哪些方式? 吃...

  • ES6的解构赋值

    一、前言 什么是“解构赋值”呢?就是从数组或者对象中取值,对变量进行赋值,这就是变量的解构赋值。 二、数组的解构赋...

  • 名词

    1 解构: 从数组或对象中提取值,给变量赋值这被称为解构解构赋值的变量都会重新声明解构赋值的规则是,只要等号右边的...

  • 变量的解构赋值 - 字符串、数值、布尔值、函数参数

    一、字符串的解构赋值 二、数值和布尔值的解构赋值 三、函数参数的解构赋值 变量的解构赋值 - 数组篇[https:...

  • Z03_变量的解构赋值

    变量的解构赋值 数组的解构赋值 ES 中从数组和对象之中提取数值,对变量进行赋值,这个过程称为解构 1. 对于 S...

网友评论

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

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