ES9對象和Promise的擴(kuò)展

今天小編更新的這篇文章相對比較好理解,一個(gè)是對對象的擴(kuò)展,和之前es6中的數(shù)組擴(kuò)展很類似,另外對Promise的擴(kuò)展,也在query中的ajax類似,內(nèi)部沒有很多,所以小編將這兩塊內(nèi)容放在一起更新。期待著大家一起進(jìn)步。大家還可以關(guān)注我的微信公眾號,蝸牛全棧。
一、對象拓展
1、es6中的數(shù)組拓展運(yùn)算符

const arr1 = [1,2,3]
const arr2 = [4,5,6]
const arr3 = [...arr1,...arr2] // [1,2,3,4,5,6]

2、克隆對象

const obj1 = {
        name:"lilei",
        age:12
      }

const obj2 = {
  work:"teacher"
}

// 克隆對象:深拷貝
const obj3 = {...obj1} // {name:"lilei",age:12}
obj1.age = 18
console.log(obj3) // {name:"lilei",age:12}

3、合并對象:如果屬性有相同的,后面的屬性值會(huì)替換掉前面的屬性值

const obj1 = {
  name:"lilei",
  age:12
}

const obj2 = {
  work:"teacher",
  age:20
}

const obj4 = {...obj1,...obj2}
console.log(obj4) // {name:"lilei",age:20,work:"teacher"}

4、剩余運(yùn)算符:作為參數(shù)的時(shí)候,必須放在最后,否則會(huì)報(bào)錯(cuò)

const obj1 = {
  name:"lilei",
  age:34,
  work:"teacher",
  course:"es"
}

const {name,age,...rest} = obj1
console.log(name) // lilei
console.log(name) // 34
console.log(rest) // { work:"teacher",course:"es"}

二、Promise擴(kuò)展:finally(異步執(zhí)行結(jié)束之后要執(zhí)行的內(nèi)容,必須加載中交互結(jié)束和數(shù)據(jù)庫操作之后關(guān)閉數(shù)據(jù)庫連接)

new Promise((resolve,reject) => {
  setTimeout(() => {
    resolve('success')
  },1000)
}).then(res => {
  console.log(res)
}).catch(err => {
  console.log(err)
}).finally(() => { // 類似ajax里面的complete
  console.log('finally')
}) // success finally
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容