7、對象的新增方法

我是程序員小白,每天致力于基礎語法的反復學習,并通過自己的總結進行記憶?。。?/b>

今天學習:對象的新增方法

1、Object.is():比較兩個值是否完全相等

Object.is('1','1') ?輸出結果:true

Object.is('1','2') ?輸出結果:false

Object.is('1',1) ???輸出結果:false

2、Object.assign(目標對象,源對象)用于對象的合并,接收兩個參數,將源對象(source)的所有可枚舉屬性,復制到目標對象(target)

2.1、對象的合并:如果目標對象與源對象有同名屬性,或多個源對象有同名屬性,則后面的屬性會覆蓋前面的屬性

let source = {a:1,b:2,c:3}

let target = {a:1,b:2,c:4,d:5}

Object.assign(source,target)

輸出結果:{a: 1, b: 2, c: 4, d: 5}

2.2、淺拷貝

let target = {a:1,b:2,c:4,d:5}

Object.assign({},target)

輸出結果:{a: 1, b: 2, c: 4, d: 5}

2.3、同名屬性的替換

let source = {name:'lichan',school:'西安電子科技大學'}

let target = {name:'lichan',school:'陜西師范大學'}

Object.assign(source,target)

輸出結果:{name: 'lichan', school: '陜西師范大學'}

2.4、數組的處理,把數組當做對象來處理

Object.assign([],[1,2,3])

輸出結果:[1, 2, 3]

Object.assign([4,5,6,4,5,6],[1,2,3])

輸出結果:[1, 2, 3, 4, 5, 6]

3、Object.keys()返回一個數組,成員是參數對象自身的(不含繼承的)所有可遍歷(enumerable)屬性的鍵名

let object= {a:'aa',b:'bb',c:'cc'}

Object.keys(object)

輸出結果:['a', 'b', 'c']

4、Object.values()返回一個數組,成員是參數對象自身的(不含繼承的)所有可遍歷(enumerable)屬性的鍵值

let object= {a:'aa',b:'bb',c:'cc'}

Object.values(object)

輸出結果:['aa', 'bb', 'cc']

5、Object.entries()返回一個數組,成員是參數對象自身的(不含繼承的)所有可遍歷(enumerable)屬性的鍵值對數組

let object= {a:'aa',b:'bb',c:'cc'}

Object.entries(object)

輸出結果:

[

‘a’:’aa’,

‘b’:’bb’,

‘c’:’cc’

]

6、Object.fromEntries()Object.entries()的逆操作,用于將一個鍵值對數組轉為對象。

let object= {a:'aa',b:'bb',c:'cc'}

Object.entries(object)

輸出結果:

[

‘a’:’aa’,

‘b’:’bb’,

‘c’:’cc’

]

Object.fromEntries(Object.entries(object))

輸出結果:{a: 'aa', b: 'bb', c: 'cc'}

7、Object.hasOwn(所要判斷的對象,屬性名)接受兩個參數,第一個是所要判斷的對象,第二個是屬性名,判斷屬性名是否為自身屬性,是則返回true,不是返回false

let object= {a:'aa',b:'bb',c:'cc'}

Object.hasOwn(object,’a’) ??返回結果:true

Object.hasOwn(object,’d’) ??返回結果:false

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容