解构赋值是JavaScript中按位置(数组)或属性名(对象)提取值并赋给变量的语法,支持跳过、剩余元素、默认值、重命名、嵌套及函数参数解构,但需注意括号包裹、null/undefined报错及保留字限制。

解构赋值是 JavaScript 中一种简洁提取数组或对象中值的语法,它让你不用通过下标或属性名反复访问,就能直接把数据“拆出来”赋给变量。
左边用方括号 [],右边是数组,变量顺序对应元素位置。
例如:
const [a, b] = [1, 2]; → a 是 1,b 是 2
const [x, , z] = [1, 2, 3]; → x = 1,z = 3
const [first, ...rest] = [1, 2, 3, 4]; → first = 1,rest = [2, 3, 4]
const [a = 10, b = 20] = [5]; → a = 5,b = 20
左边用花括号 {},变量名需与属性名一致(或使用别名),右边是对象。
立即学习“Java免费学习笔记(深入)”;
例如:
const { name, age } = { name: 'Alice', age: 30 }; → 直接拿到 name 和 age
原属性名: 新变量名:const { title: bookName } = { title: 'JS Guide' };
const { user: { id, profile: { city } } } = { user: { id: 123, profile: { city: 'Beijing' } } };
const { role = 'guest' } = {}; → role 是 'guest'
函数形参可以直接写解构模式,让调用更清晰。
function print([first, second]) { console.log(first, second); }print(['a', 'b']) 输出 a b
function connect({ host = 'localhost', port = 3000 }) { ... }connect({ host: 'api.example.com' }) → host 被赋值,port 取默认解构不是万能的,有些情况会报错或行为不符合直觉:
({ a } = { a: 1 }); 会报错,要写成 ({ a } = { a: 1 }); 或先声明再赋值const { x } = null; → TypeError;可配合空值合并或逻辑判断提前处理class、function),但可以用字符串形式别名绕过:const { 'class': cls } = { class: 'active' };
以上就是如何解构赋值_Javascript的语法是什么的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号