Assignmentdestructuringandoperatorprecedence
创始人
2024-09-20 18:00:17
0

Assignment destructuring是ES6引入的一种新特性,它允许我们通过一种语法形式从数组或对象中提取值并将其赋值给变量。

假设我们有一个数组,我们想将其第一项和第二项分别赋值给变量a和b:

const arr = [1, 2, 3, 4, 5];
const [a, b] = arr;
console.log(a); // 1
console.log(b); // 2

我们还可以使用默认值来避免undefined情况:

const [a = 0, b = 0, c = 0] = [1, 2];
console.log(a, b, c); // 1 2 0

同时,我们可以在函数参数中使用assignment destructuring:

function foo({ a, b }) {
  console.log(a, b);
}
foo({ a: 1, b: 2 }); // 1 2

在使用assignment destructuring时,需要注意运算符优先级。例如:

const obj = { a: 1, b: 2 };
const a = obj.a || 0; // 1
const b = obj.b || 0; // 0

这里的问题在于 || 运算符的优先级比 = 运算符的优先级高,所以变量a不会被赋值为0。解决方法是给整个表达式加上括号:

const obj = { a: 1, b: 2 };
const a = (obj.a || 0); // 1
const b = (obj.b || 0); // 2

相关内容

热门资讯

一分钟了解(德扑之星设置)外挂... 一分钟了解(德扑之星设置)外挂透明挂辅助插件(透视)细节揭秘(2021已更新)(哔哩哔哩);亲真的是...
第二分钟了解(aapoker模... 第二分钟了解(aapoker模拟器)外挂智能ai辅助黑科技(透视)透视教程(2025已更新)(哔哩哔...
第8分钟了解(Wepoke规律... 第8分钟了解(Wepoke规律)外挂透明挂辅助神器(透视)解密教程(2026已更新)(哔哩哔哩)是一...
七分钟了解(德州alphax)... 七分钟了解(德州alphax)外挂透明挂辅助神器(透视)2025新版教程(2024已更新)(哔哩哔哩...
第7分钟了解(WPK)外挂辅助... 第7分钟了解(WPK)外挂辅助插件安装器(透视)科技教程(2026已更新)(哔哩哔哩);第7分钟了解...
三分钟了解(微扑克神器)外挂辅... 三分钟了解(微扑克神器)外挂辅助插件安装神器(透视)规律教程(2022已更新)(哔哩哔哩)是一款可以...
一分钟带你了解!hhpoker... 一分钟带你了解!hhpoker开挂教程,微信小程序牵手辅助,德州论坛(有挂教程)-哔哩哔哩微信小程序...
推荐几款新版!拱趴大菠萝可以开... 推荐几款新版!拱趴大菠萝可以开挂,九九联盟后台可以操作,我来教教你(证实有挂)-哔哩哔哩1、九九联盟...
我来教教大家!wepoker可... 我来教教大家!wepoker可以开辅助,打哈儿床将辅助最新,2025新版总结(有挂教学)-哔哩哔哩1...
一分钟了解!hhpoker辅助... 一分钟了解!hhpoker辅助挂,和和营口麻将辅助,解密教程(有挂方略)-哔哩哔哩1、在和和营口麻将...