[JS Daily] ES6 解构赋值详解 #JavaScript #ES6 #教程

ES6 解构赋值详解

解构赋值(Destructuring Assignment)是 ES6 引入的一项重要特性,它允许你从数组或对象中提取数据,并将其赋值给单独的变量。这种语法让代码更简洁、更易读。

一、数组解构

最基本的数组解构语法:

// 基础解构
const numbers = [1, 2, 3];
const [a, b, c] = numbers;
 
console.log(a, b, c); // 1 2 3

二、对象解构

对象解构使用花括号,变量名必须与属性名一致:

// 对象解构
const user = { name: 'Alice', age: 25, city: 'Beijing' };
const { name, age } = user;
 
console.log(name); // 'Alice'
console.log(age); // 25

三、默认值

解构时可以设置默认值,当属性不存在或为 undefined 时生效:

// 带默认值
const person = { name: 'Bob' };
const { name, age = 18 } = person;
 
console.log(name); // 'Bob'
console.log(age); // 18 (默认值)

四、嵌套解构

解构赋值也支持嵌套结构:

// 嵌套对象
const user = {
name: 'Charlie',
address: {
city: 'Shanghai',
zipcode: '200000'
}
};
 
const { name, address: { city } } = user;
console.log(city); // 'Shanghai'

五、实用技巧

交换变量值

[a, b] = [b, a] — 无需临时变量

函数参数解构

function greet({ name, age }) { ... }

解构赋值让代码更加优雅,是现代 JavaScript 开发的必备技能。明天我们将深入探讨 Promise 与 async/await。


📅 JavaScript Daily · Week 2 · 2026-04-07

评论

此博客中的热门博文

OpenClaw 救援机器人建设与演进全记录 - 从单点故障到双实例自愈体系

Lossless Claw:无损上下文管理插件分析报告

[Hello-Agents] Day 2: 第一章 初识智能体