1. 程式人生 > >es6 Object的一些方法

es6 Object的一些方法

Object.is()

比較兩個值是否嚴格相等,與嚴格比較運算子(===)的行為基本一致。

不同之處只有兩個:一是+0不等於-0,二是NaN等於自身。

Object.assign()

Object.assign方法用於物件的合併,將源物件(source)的所有可列舉屬性,複製到目標物件(target)。

Object.assign方法的第一個引數是目標物件,後面的引數都是源物件。

注意,如果目標物件與源物件有同名屬性,或多個源物件有同名屬性,則後面的屬性會覆蓋前面的屬性。

Object.keys()

ES5 引入了Object.keys方法,返回一個數組,成員是引數物件自身的(不含繼承的)所有可遍歷(enumerable)屬性的鍵名。

Object.values()

Object.values方法返回一個數組,成員是引數物件自身的(不含繼承的)所有可遍歷(enumerable)屬性的鍵值。

Object.entries() 

Object.entries()方法返回一個數組,成員是引數物件自身的(不含繼承的)所有可遍歷(enumerable)屬性的鍵值對陣列。

Object.fromEntries()

Object.fromEntries()方法是Object.entries()的逆操作,用於將一個鍵值對陣列轉為物件。

該方法的主要目的,是將鍵值對的資料結構還原為物件,因此特別適合將 Map 結構轉為物件。

該方法的一個用處是配合URLSearchParams物件,將查詢字串轉為物件。

Object.fromEntries(new URLSearchParams('foo=bar&baz=qux'))
// { foo: "bar", baz: "qux" }

參考連結:http://es6.ruanyifeng.com/#docs/object-methods#Object-keys%EF%BC%8CObject-values%EF%BC%8CObject-entries