首页 / ES6 / ES6中的变量结构赋值
ES6中的变量结构赋值
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了ES6中的变量结构赋值,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2095字,纯文字阅读大概需要3分钟。
内容图文
小编的上一篇文章更新了es6中关于变量定义的问题,这篇文章继续来一些实用的干货,关于数组、对象的赋值问题。特别是在前后端合作项目的时候,对后端数据的拆分,还有就是对于函数的默认值的惰性赋值问题。看完下面的,相信会忍不住对es6伸出大拇指。真是太方便了。
一、数组的结构赋值
1、es5语法
1 let arr = [1,2,3] 2 let a = arr[0] 3 let b = arr[1] 4 let c = arr[2] 5 console.log(a,b,c) // 1 2 3
2、es6语法
let [a,b,c] = [1,2,3] console.log(a,b,c) // 1 2 3 let [a,b,c] = [1,2,[3,4]] console.log(a,b,c) // 1 2 [3,4] let [a,b,c,d] = [1,2,[3,4]] console.log(a,b,c) // 1 2 [3,4] undefind
3、惰性赋值
let [a,b,c,d = 5] = [1,2,[3,4]] console.log(a,b,c) // 1 2 [3,4] 5 let [a,b,c,d = 5] = [1,2,[3,4],6] console.log(a,b,c) // 1 2 [3,4] 6
二、对象的结构赋值
1、es5语法
let user = { name:"lilei", age:34 } let name = user.name let age = user.age console.log(name,age) // lilei 34
2、es6语法
let user = { name:"lilei", age:34 } let {name,age} = user console.log(name,age) // lilei 34
3、惰性赋值(默认值)
let {name,age=18} = { name:"lilei" } console.log(name,age) // lilei 18
4、对象解构赋值的时候,与顺序无关,只与key有关
let user = { name:"lilei", age:34 } let {age,name} = user console.log(name,age) // lilei 34
5、变量重命名
let user = { name:"lilei", age:34 } let {name:uname,age:uage} = user console.log(name,age) // 报错, console.log(uname,uage) // lilei 34
三、字符串解构赋值
1、es5语法
let str = "abcde" for(let i = 0;i<str.length;i++){ console.log(i) // a b c d e }
2、es6语法(类比数组解构赋值)
let [a,b,c,d,e] = "abcde" console.log(a,b,c,d,e) // a b c d e
四、json解构赋值
let json = ‘{"a":"hello","b":"world"}‘ let {a,b} = JSON.parse(json) console.log(a,b) // hello world
五、关于惰性赋值实例
1、函数参数
function foo([a,b,c]){ console.log(a,b,c) } let arr = [1,2,3] foo(arr) // 1 2 3
function foo({name,age}){ console.log(name,age) } let obj = { name:"lilei", age:18 } foo(obj)
2、函数返回值
function foo(){ let obj = { name:"lilei", age:18, school:"University" } return obj } let {name,age} = foo() console.log(name,age) // lilei 18
3、函数参数默认值
function foo({name,age,school="University"}){ console.log(name,age,school) } let obj = { name:"lilei", age:18 } foo(obj) // lilei 18 University
4、其他
function foo(){ console.log(123) } let [a=foo()] = [1] // 什么也不输出 let [a=foo()] = [] // 输出123
原文:https://www.cnblogs.com/feiying3995/p/14863226.html
内容总结
以上是互联网集市为您收集整理的ES6中的变量结构赋值全部内容,希望文章能够帮你解决ES6中的变量结构赋值所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。