ES6-解构赋值

news/2024/11/20 9:21:05/

可以将值从数组或属性从对象提取道不同的变量中。

交换变量

let a = 1
let b = 2
[ a, b ] = [ b, a ]//a=2,b=1

数组

const arr = [1,2,3,4];
let [a,b,c,d] = arr;//a=1,b2,c=3,d=4
let [foo] = [];
let [bar, foo] = [1];//bar=1,foo=undefined

 防止从数组中取出一个值为undefined的对象,可以在表达式左边的数组中为任意对象预设默认值;对象同理。

[a = 5, b = 7] = [1];
console.log(a); // 1
console.log(b); // 7

对象

({ a, b } = { a: 10, b: 20 });
console.log(a); // 10
console.log(b); // 20
var o = { p: 42, q: true };
var { p: foo, q: bar } = o;
console.log(foo); // 42
console.log(bar); // true
var { a: aa = 10, b: bb = 5 } = { a: 3 };
console.log(aa); // 3
console.log(bb); // 5

扩展运算符

[a, b, ...rest] = [10, 20, 30, 40, 50];
console.log(a); // 10
console.log(b); // 20
console.log(rest); // [30, 40, 50]
({ a, b, ...rest } = { a: 10, b: 20, c: 30, d: 40 });
console.log(a); // 10
console.log(b); // 20
console.log(rest); // {c: 30, d: 40}

忽略某些返回值

function f() {return [1, 2, 3];
}
var [a, , b] = f();
console.log(a); // 1
console.log(b); // 3

http://www.ppmy.cn/news/1112814.html

相关文章

强大的JTAG边界扫描(5):FPGA边界扫描应用

文章目录 1. 获取芯片的BSDL文件2. 硬件连接3. 边界扫描测试4. 总结 上一篇文章,介绍了基于STM32F103的JTAG边界扫描应用,演示了TopJTAG Probe软件的应用,以及边界扫描的基本功能。本文介绍基于Xilinx FPGA的边界扫描应用,两者几乎…

JavaEE 网络原理——TCP的工作机制(初篇 包含 UDP 协议的再次阐述)

文章目录 一、再次简述 UDP 协议二、再次简述 TCP 协议三、描述部分 TCP 内部的工作机制1. 确认应答2. 超时重传 前提: 在前面的文章中,我向大家分别简单介绍了 TCP 协议和 UDP 包装一个数据形成数据报发送信息。 除此之外,还通过代码编写了 …

车载信息安全

车载信息安全是指保护车辆内部信息系统和数据不受未经授权的访问、使用、泄露、篡改或破坏的措施。随着汽车行业的快速发展,车载信息系统已经成为现代汽车的重要组成部分,为驾驶员提供了导航、娱乐、通信等功能。然而,这些系统也可能成为黑客…

数据结构---链表(java)

目录 1. 链表 2. 创建Node 3. 增加 4. 获取元素 5. 删除 6. 遍历链表 7. 查找元素是否存在 8. 链栈的实现 9. 链队的实现 1. 链表 数据存放在"Node"结点中 优点:不用考虑扩容和缩容的问题,实现了动态存储数据 缺点:没有…

6- 华为云查看容器日志

1 查看位置 二 进入容器查看 ls cat main.py # 退出命令是 exit() 或者 quit() cat main.py 在docker使用该命令进入文件后的退出命令

【Unity 实用工具篇】✨ | 编辑器扩展插件 Odin Inspector,快速上手学习

前言【Unity 实用工具篇】✨ | 编辑器扩展插件 Odin Inspector,快速上手学习一、Odin Inspector插件1.1 介绍1.2 相关网站链接1.3 效果展示二、导入插件三、基础功能介绍四、快速上手4.1 Attributes 相关4.1.1 使用Attribute更好的显示数据。Title、BoxGroup、FoldoutGroup4.1…

Rocky9.2基于http方式搭建局域网yum源

当前负责的项目有几十台Linux服务器,在安装各类软件的时候需要大量依赖包,而项目部署的环境属于内网环境,与Internet网完全隔离,无法采用配置网络yum源的方式安装rpm包,直接在每台linux服务器上配置本地yum源也比较麻烦,而采用直接下载rpm包用rpm命令安装更是费时费力。所…

C语言经典100例题(61)--输出杨辉三角形的前10行

目录 题目 问题分析 代码 运行结果 题目 输出杨辉三角形的前10行 问题分析 1 1  1 1  2  1 1  3  3  1 1  4  6  4  1 1  5  10 10 5  1 杨辉三角形的特点: 1.第一列都为1.第x行第x列都为1 2.第几行就有几个元素 3.从第三行开始,…