对象的基础用法和解构赋值
生活随笔
收集整理的這篇文章主要介紹了
对象的基础用法和解构赋值
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
屬性簡(jiǎn)寫(xiě)
let a = 1; let obj = { a } console.log(obj) //{a:1}可計(jì)算的屬性值
let count = 0function addcount(key) {return `${key}_${count++}`}const nameKey = 'name';const agekey = "age";const jobKey = "job";let person = {[addcount(nameKey)]: 'Matt',[addcount(agekey)]: 27,[addcount(jobKey)]: '小明'}console.log(person) //{name_0:'Matt',age_1,27,job_2:'小明'}console.log(nameKey) //name、簡(jiǎn)寫(xiě)的方法名?
?
let obj2 = {// sayName: function (name) {// console.log(name)// }// 簡(jiǎn)寫(xiě)sayName(name) {console.log(name)}}obj2.sayName('執(zhí)行了')解構(gòu)賦值?
可以設(shè)置默認(rèn)值,對(duì)象中屬性值為undefined或?yàn)榭諘r(shí),默認(rèn)值生效
【注意】:直接解構(gòu)null或undefined會(huì)拋出錯(cuò)誤
數(shù)組解構(gòu)賦值
let [a,b]=[1,2] //交換兩個(gè)變量的值 let[a,b]=[b,a] //擴(kuò)展運(yùn)算符的運(yùn)用 let[a,...b]=[1,2,3] //有默認(rèn)值 右側(cè)的參數(shù)等于undefined,默認(rèn)值生效 let[a=3,b]=[1,2]對(duì)象解構(gòu)賦值
let {a,b}={a:1,b:2} //等價(jià)于 let {a:a,b:b}={a:1,b:2};let{a,...b}={a:1,b:2,c:3}嵌套解構(gòu)?
可以通過(guò)嵌套解構(gòu)復(fù)制對(duì)象數(shù)組
let person = {name: '小紅',age: 12,say: {talk: '脫口秀'}};let personCopy = {};({ name: personCopy.name, age: personCopy.age, say: personCopy.say } = person)console.log(personCopy)let { say: { talk } } = person;console.log(talk) // "脫口秀"參考上下文匹配
//在參數(shù)列表中進(jìn)行解構(gòu)賦值let person = {name: '小紅',age: 12};function woman(color, { name, age }, sex) {//對(duì)參數(shù)解構(gòu)賦值不會(huì)影響arguments對(duì)象console.log(arguments)console.log(name, age)}woman('red', person, '女') 創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的对象的基础用法和解构赋值的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 征信纯白户好吗
- 下一篇: Spark精华问答 | Spark 会替