解构赋值
- 解构赋值是对赋值运算符的扩展
- 它是一种针对数据或者者对象进行模式匹配,而后对其中的变量进行赋值
- 在代码书写上简洁易读,语义更加清晰明了;也方便了复杂对象中数据字段的获取
- 解构赋值表达式右边的部分表示解构的源;解构表达式左边的部分表示解构的目标
数组模型的解构
- 基本数组的解构
let [a,b,c] = [1,2,3];console.log(a,b,c)// a = 1// b = 2// c = 3
- 多层嵌套数组的解构
let [a,[[b],c]] = [1,[[2],3]];console.log(a,b,c);// a = 1// b = 2// c = 3
- 数组中缺少了某一部分,可忽略
let [a, ,b] = [1,2,3];console.log(a,b);// a = 1// b = 3
- 不完全解构
let [a = 1,b] = [];console.log(a,b);// a = 1// b = undefined
- 扩展运算符(剩余运算符)
let [a, ...b] = [1,2,3];console.log(a,b);// a = 2// b = [2,3]
- 在数组的解构赋值中,解构的目标若为可遍历对象,皆可进行解构赋值
let [a,s,d,f,g] = "qwert";console.log(a,s,d,f,g);// a = "q"// s = "w"// d = "e"// f = "r"// g = "t"
- 特殊的解构赋值
// undefined表示空,原样输出let [a = 3] = [undefined]console.log(a);// a = 3//数组为空,原样输出;a原样输出,把a的值赋给blet [a = 3,b = a] = [];console.log(a,b);// a = 3// b = 3// 将2的值赋给a,将a的值赋给blet [a = 1,b = a] = [2];console.log(a,b);// a = 2// b = 2// 将1解构给a,将2解构给blet [a = 3,b = a] = [1,2];console.log(a,b);// a = 1// b = 2
说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 »
js中的解构赋值