javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > JS变量解构

详解JS如何进行变量解构

作者:生命猿于运动

JavaScript中,可以使用解构赋值的方式来对数组或者对象进行变量解构,下面小编就来为大家详细介绍一下JavaScript实现数组或者对象解构的方法吧

定义

JavaScript中,可以使用解构赋值的方式来对数组或者对象进行变量解构,也可以简单的理解为就是对变量拆解属性进行赋值。

数组解构

数组解构唯一要注意的就是下标的位置,只要解构赋值变量所处下标位置相同,那么就能够成功解构赋值:

数组长度等于1

const arr1 = [6];
const [id] = arr1;
console.log(id);	// 6

数组长度大于1 按数组下标进行索引赋值,仅有一个id变量:

const arr2 = [1,2,3,4,5];
const [id] = arr2;
console.log(id);	// 1

多个变量解构,如果中间有不需要解构的,也需要以逗号进行分割,主要确保需要解构的索引位置准确:

const arr3 = [1,2,3,4,5];
const [num1,,num2,,num3] = arr3;
console.log(num1);	// 1
console.log(num2);	// 3
console.log(num3);	// 5

数组全量解构,即所有索引位置都对应解构参数:

const arr4 = [1,2,3];
const [num1,num2,num3] = arr4;
console.log(num1);	// 1
console.log(num2);	// 2
console.log(num3);	// 3

数组解构默认值设置,使用(变量名=默认值)进行解构默认值设置:

const arr5 = [1,,3];
const [num1,num2=22,num3] = arr5;
console.log(num1);	// 1
console.log(num2);	// 22
console.log(num3);	// 3

用于变量值交换,只需将两个或多个变量存放到等号两边的数组,对应好要交换的位置即可:

const a=1;
const b=2;
[a, b] = [b, a];
console.log(a + '-' + b);	// 2-1

对象解构

掌握了上面的数据解构,那么对象解构也就不难理解了,数组与对象的区别就是索引方式不同,数组是根据下标索引,而对象则是key-value的索引方式,所以这里我们只需要解构赋值变量的key相同,那么就能够成功解构赋值:

对象单个/多个参数解构赋值,在等号左边定义解构对象对应的key参数进行解构:

const obj1 = {id:1001, name:'张三'};
const {id, name} = obj1;
console.log(id + '-' + name);	// 1001-张三

对象解构默认值设置,使用(变量名=默认值)进行解构默认值设置:

const obj2 = {id:1002, name:'李四'};
const {id, name, age=18} = obj2;
console.log(id + '-' + name + '-' + age);	// 1002-李四-18

优缺点

优点:

缺点:

总结

js解构也是很流行的代码写法,掌握基础的用法也非常简单,用上了真的会停不下来,日常使用也只需要我们上面的案例就够了,其他的自己有需要可以再深入研究,不过也不建议研究的太多,因为那会使代码可读性变得更加复杂。

到此这篇关于详解JS如何进行变量解构的文章就介绍到这了,更多相关JS变量解构内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文