JavaScript解构赋值是通过[ ]或{ }按索引或属性名提取数组/对象值并赋变量的语法,支持跳过、rest、默认值、重命名、嵌套及函数参数解构,但需注意不能以{开头、不可解构null/undefined、默认值仅对undefined生效、且为浅拷贝。

JavaScript 解构赋值是一种简洁、直观地从数组或对象中提取值并赋给变量的语法,不用再写 arr[0] 或 obj.name 那么啰嗦。
从数组中解构:按位置取值
数组解构依据元素在数组中的**索引顺序**,用一对方括号 [] 匹配结构:
- 基本用法:
const [a, b] = [1, 2];→a得到1,b得到2 - 跳过某些项:用逗号占位,
const [first, , third] = ['a', 'b', 'c'];→first = 'a',third = 'c' - 获取剩余元素(rest 操作符):
const [x, ...rest] = [10, 20, 30, 40];→x = 10,rest = [20, 30, 40] - 默认值:当对应位置为
undefined时生效,const [name = '匿名'] = [];→name是'匿名'
从对象中解构:按属性名取值
对象解构依据**属性名(key)**,用一对花括号 {},变量名默认需与属性名一致:
- 基础写法:
const { name, age } = { name: '小明', age: 25 };→ 直接得到两个变量 - 重命名变量:用
原属性名: 新变量名,const { title: bookName } = { title: 'JS入门' };→bookName得到值 - 设置默认值:
const { city = '北京' } = {};→city为'北京'(注意:仅当属性不存在或值为undefined时触发) - 嵌套解构:
const { user: { id, profile: { nick } } } = { user: { id: 123, profile: { nick: '阿七' } } };→ 一步拿到id和nick
函数参数中直接解构
函数形参也支持解构,让调用更清晰、逻辑更聚焦:
标签: javascript java js
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~