javascript对象解构支持用“旧名: 新名”语法重命名变量,冒号左侧为原属性名,右侧为新变量名;可结合默认值使用,如title: posttitle = 'untitled';支持与原名声明、默认值混合使用,但不可省略原属性名。

在 JavaScript 对象解构中,可以一边声明变量,一边用 旧名: 新名 的语法重命名,无需额外步骤。
基本语法:用冒号实现重命名
解构时,在属性名后加冒号和新变量名,即可将原属性值赋给自定义名称的变量:
-
const { name: fullName, age: userAge } = person;—— 把person.name赋给fullName,person.age赋给userAge - 冒号左边是对象中的属性名(必须存在),右边是你要声明的变量名(可任意命名)
- 该变量会自动声明为
const(若用const解构)、let或var(取决于你用的声明关键字)
配合默认值一起使用
重命名时也能设置默认值,写在新变量名后面,用等号连接:
在 Java 中初始化和管理阿里云 SDK客户端。包括单例模式、线程安全、endpoint 与 region 配置、VPC 终端节点、同步与异步等。
const { title: postTitle = 'Untitled', tags: postTags = [] } = article;- 如果
article.title是undefined或不存在,postTitle就取'Untitled' - 注意:默认值作用于「解构出来的值」,不是原始属性;重命名不改变默认值的触发逻辑
混合使用:重命名 + 原名保留 + 默认值
一个解构语句中可以混用多种模式:
const { id, name: userName, role: userRole = 'guest', status = 'active' } = user;- 其中
id直接按原名声明,name和role重命名,role和status同时设默认值 - 所有变量在同一行完成声明、赋值、重命名和兜底,简洁且可读性强
常见注意事项
几个容易出错的点需留意:
- 不能只写新名(如
{ userName })期望自动映射到name—— 必须显式写name: userName - 重命名变量名要符合标识符规则,不能是保留字,也不能带点或括号
- 如果源对象没有对应属性,重命名后的变量值为
undefined(除非设置了默认值) - 嵌套解构中同样适用,例如:
const { profile: { email: userEmail } } = data;
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










