JavaScript解构赋值--数组解构赋值与对象解构赋值

前言

解构赋值是JavaScript的一个强大特性,允许从数组或对象中提取数据,并赋值给定义的变量。

对象解构

直接根据属性名来解构赋值:

const person = { name: '张三', age: 30 };const { name, age } = person;console.log(name); 
console.log(age); 

解构时重命名变量:

const { name: personName, age: personAge } = person;console.log(personName); 
console.log(personAge); 

 解构一个不存在的属性,用默认值填充:

const { name, age, gender = '未知' } = person;

数组解构

const arr = [1, 2, 3];const [first, second] = arr;const [first, , third] = arr;const [first, ...rest] = arr;

函数内的结构赋值

这使得函数在处理接收到的对象或数组参数时更加灵活

function introduce({ name, age }) {console.log(`我叫${name},今年${age}岁。`);
}introduce(person); // 输出: 我叫张三,今年30岁。

这样提升了代码的可读性和简洁性

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/711476.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

动态路由使用

目录 添加动态路由 添加单个路由 添加多个路由 指定路由添加的位置 导航守卫添加路由 删除动态路由 添加动态路由 添加动态路由的方法有两个:addRoutes(添加多个路由)和addRoute(添加单个路由),但是a…

ASO 对App产品性能的影响

可发现性 拥有出色的App还不足以让人们发现它,ASO技术通过提高搜索排名来增强App的可发现性。当用户可以在搜索结果中轻松找到应用程序时,那么下载和成功的潜力就会飙升。 设定期望 实施有效的应用商店优化不仅可以为潜在用户建立正确的期望&#xf…

东方通 | 基于TongWeb中间件适配改造实战

东方通 一、东方通[Tong Web] 简介 ​为了方便地开发、部署、运行和管理Internet上基于三层/多层结构的应用,需要以基于组件的底层技术为基础,规划一个整体的应用框架,提供相应的支撑平台,作为Internet应用的基础设施&#xff0…

每日一类:Qt GUI开发的基石《QWidget》

深入探索QWidget:Qt GUI开发的基石 在Qt框架中,QWidget类扮演着构建图形用户界面(GUI)的基础角色。它不仅提供了窗口的基本功能,还允许开发者通过继承和定制来创建各式各样的用户界面元素。本文将详细介绍QWidget的关…

白酒:传统酿造工艺与现代科技相结合的创新实践

在云仓酒庄豪迈白酒的生产过程中,传统酿造工艺与现代科技的结合是推动产业发展的重要动力。云仓酒庄作为一家注重创新与实践的酒庄,在这方面进行了许多有益的探索和尝试。 首先,传统酿造工艺是云仓酒庄豪迈白酒的灵魂。在长期的生产实践中&am…

抽丝剥茧!API在互联网金融领域里大显身手:深度解锁三大创新应用场景

🚀 引言 有这么一位幕后高手,它不显山露水却能牵动整个互联网金融江湖的脉搏,它在无形中编织数据网络,如同枢纽般连通各方资源,在静默中推动创新进程,这就是大名鼎鼎的API(应用程序接口&#x…

基于ssm学生学籍管理系统设计与实现+vue论文

目 录 目 录 I 摘 要 III ABSTRACT IV 1 绪论 1 1.1 课题背景 1 1.2 研究现状 1 1.3 研究内容 2 2 系统开发环境 3 2.1 vue技术 3 2.2 JAVA技术 3 2.3 MYSQL数据库 3 2.4 B/S结构 4 2.5 SSM框架技术 4 3 系统分析 5 3.1 可行性分析 5 3.1.1 技术可行性 5 3.1.2 操作可行性 5 3…

C语言:指针(二)

目录 1.数组名的理解2.使用指针访问数组3.一维数组传参的本质4.二级指针5.指针数组6.字符指针变量7.数组指针变量8.二维数组传参的本质9.函数指针变量10.函数指针数组11.回调函数12.qsort函数13.使用回调函数模拟实现qsort函数 1.数组名的理解 int main() {int arr[] { 1,2,3…

VBA将当前打开的表格生成PDF图片

前言 VBA将当前的表格存储成PDF文件进行存储 代码 Sub ExportToPDF()Dim FilePath As StringDim FileName As StringDim ExportRange As Range 设置导出文件路径及名称FilePath "D:\Users\"FileName "ExportedPDF" 设置导出区域范围Set ExportRange Ra…

Unity(第十八部)物理力学,碰撞,触发、关节和材质

1、重力 刚体组件 英文中文描述RigidBody刚体组件physics->rigidbody ,刚体组件使一个物体有了质量,重力等。,use gravity 勾选后,物体才会受到重力,会自动下落,取消勾选就不会。,&#xf…

RTCA DO-178C 机载系统和设备认证中的软件注意事项 - 目录

本文为DO-178C标准目录,可点击以下对应章节直接跳转至具体内容。 1.0 介绍 INTRODUCTION 2.0 软件开发的系统相关性 SYSTEM ASPECTS RELATING TO SOFTWARE DEVELOPMENT 3.0 软件生命周期 SOFTWARE LIFE CYCLE 4.0 软件计划过程 SOFTWARE PLANNING PROCESS 5.0 …

selenuim[1]($x(‘xpath语法’)、WebDriverWait())

文章目录 初学selenuim记录1、执行driver webdriver.Chrome()后很久才打开浏览器2、浏览器多元素定位 $x(‘xpath语法’)3、打开浏览器driver.get("网址")执行了很久才开始定位元素:等待(1)driver.set_page_load_timeout(t)&#…

超越CPU和GPU:引领AI进化的LPU

什么是CPU CPU(Central Processing Unit)是由数十亿个晶体管构成的,可以拥有多个处理核心,通常被称为计算机的“大脑”。它对所有现代计算系统至关重要,因为它执行计算机和操作系统所需的命令和进程。CPU在决定程序运…

【Linux C | 网络编程】gethostbyaddr 函数详解及C语言例子

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 🤣本文内容🤣&a…

JavaSE面试——hashcode和equals

对象调用 hashCode 方法后,会返回一串 int 类型的数字码 java 规定: 1. 两个对象的 hashCode() 相等,那他们的 equals() 不一定相等 2. 两个对象的 equals() 相等,那他们的 hashCode() 必定相等 3. 重写 equals() 方法时一定要…

三天学会阿里分布式事务框架Seata-SpringCloud Alibaba分布式基础案例搭建

锋哥原创的分布式事务框架Seata视频教程: 实战阿里分布式事务框架Seata视频教程(无废话,通俗易懂版)_哔哩哔哩_bilibili实战阿里分布式事务框架Seata视频教程(无废话,通俗易懂版)共计10条视频&…

日志到filebeat-->logstash-->elastic-->kibana

1、日志到filebeat。 cat /etc/filebeat/filebeat.yml filebeat.inputs: - type: syslog format: rfc3164 protocol.udp: host: "0.0.0.0:514" output.logstash: hosts: ["localhost:5044"] 验证方式: tcpdump -i 网卡名称 udp port 514 2、…

NLog条件配置——实现将包含某个特定字符串日志写入指定文件

需求产生缘由 在开发中为了了解程序在运行的内存状态并记录下来,以便出问题时判断是不是与内存相关。于是实时采集了开发程序需要的内存信息。但采集的内存信息在存储时,以NLog中的Trace级别来存储的话,会与程序其它Trace级别的日志都记录在…

瑞吉苍穹外卖如何拓展?已经经过不同公司多轮面试。项目中会问到哪些问题?以及问题如何解决?

别催了,别催了,先收藏吧。 作者大大正在加班加点完成。 文章会尽快发布,关注收藏,尽请期待。 想要加入并查阅作者的知识库可以联系作者 不要白嫖,通过后,附上关注和收藏截图。 已有众多小伙伴加入 目前…

QtCreator报Failed to parse qmlimportscanner output解决

错误如下: 定位错误位置 增加错误信息打印 打印执行命令 执行打印输出的命令,成功返回JSON 但输出的JSON对象不是json格式,而是命令 增加$$成功输出JSON 使用QtCreator12编译一次后,再使用QtCreator13成功编译通过,问题解决