JS對象方法——速記小本子

對象檢測方法

  1. obj.hasOwnProperty(prop)返回boolean,prop:要檢測的屬性的 String 字符串形式表示的名稱,或者 Symbol。指示對象自身屬性中是否具備指定的屬性(也就是,是否有指定的鍵)
  2. prototypeObj.isPrototypeOf(object)返回boolean,測試引用對象是否存在於參數對象的原型鏈,與instanceof不一樣,object instanceof AFunction中,object 的原型鏈是針對 AFunction.prototype 進行檢查的
  3. obj.propertyIsEnumerable(prop)返回boolean,檢測對象指定的屬性是否可枚舉
  4. Object.is(value1, value2)返回boolean,判斷兩個值是不是相同的值,不會隱式轉換
  5. Object.isExtensible(obj)返回boolean,判斷一個對象是不是可擴展的(是否能夠在它上面添加新的屬性)
  6. Object.isFrozen(obj)返回boolean,判斷一個對象是否被凍結
  7. Object.isSealed(obj)返回boolean,判斷對象是否被密封(不可擴展 ,且全部自身屬性都不可配置且所以不可刪除(但不必定是不可寫)的對象

對象屬性查看方法

  1. Object.values(obj)返回對象的全部可枚舉屬性值的數組,值的順序與使用for...in循環的順序相同 ( 區別在於 for-in 循環枚舉原型鏈中的屬性 )
  2. Object.keys(obj)返回對的全部可枚舉屬性的字符串數組,排列順序和 for...in 循環遍歷時順序一致
  3. Object.entries(obj)返回給定對象自身可枚舉屬性的鍵值對數組,其排列與 for...in 循環遍
  4. Object.fromEntries(iterable)返回一個由該迭代對象條目提供對應屬性的新對象,把鍵值對列表轉換爲一個對象,參數:可迭代對象,相似 Array 、Map 歷時返回的順序一致(區別於 for-in 循環還會枚舉原型鏈中的屬性),淺拷貝
  5. obj.toString()返回表示該對象的字符串,[object Object]
  6. object.valueOf()返回該對象的原始值,見底部表
  7. obj.toLocaleString()返回對象的字符串表示,方法被用於派生對象爲了特定語言環境的目的(locale-specific purposes)而重載使用
  8. Object.getOwnPropertyDescriptor(obj, prop)返回指定屬性描述對象,返回指定對象上的一個自有屬性對應的屬性描述符,prop目標對象的屬性名
  9. Object.getOwnPropertyDescriptors(obj)返回對象的全部自身屬性描述符,用來獲取一個對象的全部自身屬性的描述符
  10. Object.getOwnPropertyNames(obj)返回對象的全部屬性名字符串組成的數組,返回一個由指定對象的全部自身屬性的屬性名(包括不可枚舉屬性但不包括Symbol值做爲名稱的屬性)組成的數組
  11. Object.getOwnPropertySymbols(obj)返回對象全部Symbol屬性的數組
  12. Object.getPrototypeOf(object)返回對象的原型,返回指定對象的原型(內部[[Prototype]]屬性的值),沒有則null

對象屬性操做方法

  1. Object.assign(target, ...sources)返回目標對象,用於將全部可枚舉屬性的值從一個或多個源對象複製到目標對象。它將返回目標對象,淺拷貝
  2. Object.create(proto[,propertiesObject])返回新對象,帶有指定原型對象和屬性,參數1:新對象的原型,參數2:要定義其可枚舉屬性或修改的屬性描述符的對象
  3. Object.setPrototypeOf(obj, prototype)返回這個對象,設置一個指定的對象的原型 ( 即, 內部[[Prototype]]屬性)到另外一個對象或 null
  4. Object.preventExtensions(obj)返回不可擴展對象,讓對象變的不可擴展,也就是永遠不能再添加新屬性
  5. Object.freeze(obj)返回凍結的對象,凍結一個對象。一個被凍結的對象不再能被修改
  6. Object.seal(obj)返回被密封的對象,阻止添加新屬性並將全部現有屬性標記爲不可配置。當前屬性的值只要原來是可寫的就能夠改變
  7. Object.defineProperties(obj, props)返回參數對象自己,在一個對象上定義新的屬性或修改現有屬性,並返回該對象,參數2:要定義其可枚舉屬性或修改的屬性描述符的對象
  8. Object.defineProperty(obj, prop, descriptor)返回參數對象,參數2:定義或修改的屬性名,參數3:對應的屬性描述符。直接在一個對象上定義一個新屬性,或者修改一個對象的現有屬性

對象原型方法

  1. obj.hasOwnProperty()
  2. prototypeObj.isPrototypeOf()
  3. obj.propertyIsEnumerable()
  4. obj.toLocaleString()
  5. obj.toString()
  6. object.valueOf()
    原始值
相關文章
相關標籤/搜索