物件擴充套件內容

2022-09-03 19:36:07 字數 1954 閱讀 9279

const function def () 	}}

//es6可以簡潔如下表示,上下是一樣的

const function def ()

}}

我們知道訪問屬性的方式(點運算子和中括號運算子,區別在於點運算子後面不可以是變數或者數字,而中括號卻可以!!!)

let obj =

obj.name //3

obj[1] //"kangkang"

obj[adfasdfqwe0qre92323@#@3423]//6

const key ="age"

const profile =

// [key] 變數代表是age ,它可以是任何計算的量,在中括號內

profile.age

//21

profile.key

//undefined

const obj1 = 

const obj2 = //成功!

// 當屬性存在物件的情況

const obj3=

}const obj4 =

console.log(obj3.profile.name) //"kangkang"

obj4.profile.name = "xiaolan"

console.log(obj3.profile.name) //"xiaolan"

console.log(obj4.profile.name) //"xiaolan"

當進行複製時,擴充套件運算子遇到屬性是物件時只是將物件的位址進行拷貝,所以會出現複製出來的物件可以更改原物件的屬性值!!!(淺複製)

const newobj = 

遇到相同的屬性是會保留後面乙個物件的同名屬性的值!!!

合併也是淺拷貝!!

console.log(object.is(+0,-0)) //false

console.log(+0 === -0) //true

console.log(object.is(nan,nan)) //true

console.log(nan === nan) //false

const obj = object.assign(,,)

第乙個會作為合併最終返回的物件!

也是淺拷貝!

objectkeys()

object.values()

object.entries()

const obj = 

console.log(objcet.keys(obj)) //屬性名組成的陣列

console.log(object.values(obj)) //值組成的陣列

console.log(object.entries(obj)) // 屬性名和值組成的陣列

for (let [k,v] of object.entries(obj)) //好好看!

let obj1 = 

let obj2 =

let obj3 = object.create(obj1)

console.log(obj3.__proro__)

// object.setprototypeof(obj3,obj2)

console.log(obj3.__proto__)

////效能不好!

const obj = 

const obj2 = // 只有使用簡寫形式的方法才可以使用super,否則不行(箭頭函式也不行)!

}obj2.say()//undefined

object.setprototypeof(obj2,obj)

obj2.say()//kangkang

ES6的物件擴充套件內容

1.屬性的簡潔表示方法 允許在物件之中,直接寫變數,這時,屬性名為變數名,屬性值為變數的值。function f x,y 等同於 function f1 x,y console.log f 1,2 2.除了屬性方法也可以簡寫 const o 等同於 const o commonjs 輸出變數適合使用...

Kafka擴充套件內容

低階api props.put group.id 01 offset自動重置,offset可能因為快取刪除,序號不一定從0開始 props.put consumerconfig.auto offset reset config,earliest 高階api consumer.seek new top...

oldboyshell程式設計擴充套件內容

oldboyshell程式設計擴充套件內容 一 命令的優先順序 命令分為 alias compound commands function build in hash path error command not found 獲取乙個命令會按照上述優先順序取尋找,先找同名的alias命令,再找com...