【ES6复习笔记】解构赋值(2)

server/2024/12/28 19:07:40/

介绍

解构赋值是一种非常方便的语法,可以让我们更简洁地从数组对象中提取值,并且可以应用于很多实际开发场景中。

1. 数组解构赋值

数组解构赋值是按照一定模式从数组中提取值,然后对变量进行赋值。下面是一个例子:

const F4 = ['小沈阳', '刘能', '赵四', '宋小宝'];
let [xiao, liu, zhao, song] = F4;
console.log(xiao); // 输出: 小沈阳
console.log(liu); // 输出: 刘能
console.log(zhao); // 输出: 赵四
console.log(song); // 输出: 宋小宝

在这个例子中,我们定义了一个数组 F4,然后使用解构赋值数组中的元素分别赋值给变量 xiaoliuzhaosong

2. 对象解构赋值

对象解构赋值是按照一定模式从对象中提取值,然后对变量进行赋值。下面是一个例子:

const zhao = {name: '赵本山',age: '不详',xiaopin: function() {console.log("我可以演小品");}
};let { name, age, xiaopin } = zhao;
console.log(name); // 输出: 赵本山
console.log(age); // 输出: 不详
console.log(xiaopin); // 输出: [Function: xiaopin]
xiaopin(); // 输出: 我可以演小品

在这个例子中,我们定义了一个对象 zhao,然后使用解构赋值对象中的属性分别赋值给变量 nameagexiaopin

复杂解构赋值

// 复杂解构
let wangfei = {name: '王菲',age: 18,songs: ['红豆', '流年', '暧昧', '传奇'],history: [{name: '窦唯'},{name: '李亚鹏'},{name: '谢霆锋'}]
};
let {songs: [one, two, three], history: [first, second, third]} = wangfei;

3. 解构赋值的应用场景

解构赋值在实际开发中有很多应用场景,比如:

  • 函数参数的解构赋值,可以简化函数调用时的参数传递。
  • 从 API 返回的数据中提取需要的数据。
  • 交换变量的值。

下面是一个交换变量值的例子:

let a = 1;
let b = 2;
[a, b] = [b, a];
console.log(a); // 输出: 2
console.log(b); // 输出: 1

在这个例子中,我们使用解构赋值来交换变量 ab 的值。


http://www.ppmy.cn/server/153992.html

相关文章

外网访问 Docker 容器的可视化管理工具 DockerUI

DockerUI 是一个 docker 容器镜像的可视化图形化管理工具,DockerUI 可以用来轻松构建、管理和维护 docker 环境。让用户维护起来更方便。 本文就介绍如何安装使用 DockerUI 并结合路由侠内网穿透来访问 DockerUI。 第一步,安装 DockerUI 1,…

uniapp中wx.getFuzzyLocation报错如何解决

一、用wx.getLocation接口审核不通过 用uniapp开发小程序时难免需要获取当前地理位置。 代码如下: uni.getLocation({type: wgs84,success: function (res) {console.log(当前位置的经度: res.longitude);console.log(当前位置的纬度: r…

Bert各种变体——RoBERTA/ALBERT/DistillBert

RoBERTa 会重复一个语句10次,然后每次都mask不同的15%token。丢弃了NSP任务,论文指出NSP任务有时甚至会损害性能。使用了BPE ALBERT 1. 跨层参数共享 可以共享多头注意力层的参数,或者前馈网络层的参数,或者全部共享。 实验结果…

vscode-QT环境配置

vscode-QT环境配置 参考链接:https://www.cnblogs.com/RioTian/p/18281114 一、 背景 已经安装了QT软件,电脑里有了QT Creater 12.0。使用QT生成并运行了一个project在这个project的基础上,直接配置vscode的环境 二、环境配置 确认QT工程成…

【网络安全 | 漏洞挖掘】如何通过竞态条件发现账户接管漏洞

未经许可,不得转载。 文章目录 背景正文设置竞态条件实现漏洞背景 目标应用允许用户创建项目。这些项目中包含多个用户角色,每个角色权限不同(如所有者、管理员、成员管理者等)。用户可通过接受邀请来加入项目,而只有项目所有者才能通过输入邮箱将项目所有权转移给其他用…

MacOS M3源代码编译Qt6.8.1

编译时间过长,如果不想自己编译,可以通过如果网盘进行下载: 链接: https://pan.baidu.com/s/17lvF5jQ-vR6vE-KEchzrVA?pwdts26 提取码: ts26 在macOS上编译Qt 6需要一些前置步骤和工具。以下是编译Qt 6的基本步骤: 安装Xcode和…

在交叉编译中,常见的ELF(elf)到底是什么意思?

ELF 是 Executable and Linkable Format 的缩写,中文翻译为“可执行与可链接格式”。它是一种通用的文件格式,主要用于存储可执行文件、目标文件(编译后的中间文件)、动态库(.so 文件)以及内存转储文件&…

社区版Dify安装时会遇到的网络问题,已成功安装

Dify安装时会遇到的网络问题,已成功安装 Dify 简介 看到这篇的都是想探索下大模型,Agent,本地搭建会怎么样。这是社区版本的安装指南,不是API版本安装。 最低配环境: 2核4G 第一步: 安装docker,docker-compose 可能存在的错误 …