国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Object對(duì)象

Joyven / 1645人閱讀

摘要:前言原生提供對(duì)象的所有其他對(duì)象都繼承自對(duì)象,即這些對(duì)象都是的實(shí)例對(duì)象的原生方法分為兩類本身的方法的實(shí)例方法對(duì)象本身的方法直接定義在對(duì)象的方法方法就是直接定義在對(duì)象上的實(shí)例方法定義在原型對(duì)象上的方法,可以被實(shí)例直接使用定義了一個(gè)方法,然后生成

前言

JavaScript原生提供Object對(duì)象

JavaScript的所有其他對(duì)象都繼承自O(shè)bject對(duì)象,即這些對(duì)象都是Object的實(shí)例

Object對(duì)象的原生方法分為兩類:Object本身的方法、Object的實(shí)例方法

Object對(duì)象本身的方法
直接定義在Object對(duì)象的方法
Object.print = function (o) {
    console.log(o);
}

print方法就是直接定義在Object對(duì)象上

Object的實(shí)例方法
定義在Object原型對(duì)象Object.prototype上的方法,可以被Object實(shí)例直接使用
Object.prototype.print = function () {
    console.log(this);
};

var obj = new Object();
obj.print() // Object

Object.prototype定義了一個(gè)print方法,然后生成一個(gè)Object的實(shí)例obj,obj直接繼承了Object.prototype的屬性和方法,所以可以直接使用obj.print調(diào)用print方法,實(shí)質(zhì)上就是obj對(duì)象的print方法就是調(diào)用Object.prototype.print方法

凡是定義在Object.prototype對(duì)象上面的屬性和方法,將被所有實(shí)例對(duì)象共享

Object()
Object本身是一個(gè)函數(shù),可以當(dāng)作工具方法使用,將任意值轉(zhuǎn)為對(duì)象

此方法常用于保證某個(gè)值一定是對(duì)象

1、Object()返回一個(gè)空對(duì)象
var obj = Object();
// 等同于下面兩條語(yǔ)句
var obj = Object(undefined);
var obj = Object(null);
obj instanceof Object // true

Object()返回一個(gè)空對(duì)象

instanceof運(yùn)算符驗(yàn)證,一個(gè)對(duì)象是否為指定的構(gòu)造函數(shù)的實(shí)例,obj對(duì)象時(shí)Object的實(shí)例

2、如果參數(shù)是原始類型的值,Object()將其轉(zhuǎn)為對(duì)應(yīng)的包裝對(duì)象的實(shí)例
var obj = Object(1);
obj instanceof Object // true
obj instanceof Number // true

var obj = Object("foo");
obj instanceof Object // true
obj instanceof String // true
3、如果參數(shù)是一個(gè)對(duì)象,則總是返回該對(duì)象,不用轉(zhuǎn)換
var arr = [];
var obj = Object(arr); // 返回原數(shù)組
obj === arr // true

var fn = function() {};
var obj = Object(fn); // 返回原函數(shù)
obj === fn // true

// 一個(gè)判斷變量是否為對(duì)象的函數(shù)
function isObject(value) {
    return value === Object(value);
}
isObject([]) // true
isObject(true) // false
Object構(gòu)造函數(shù)
通過(guò)var obj = new Object()的寫法生成新對(duì)象,與字面量的寫法var obj = {}是等價(jià)的
構(gòu)造函數(shù)的用法與工具方法相同點(diǎn)

使用時(shí),可以接受一個(gè)參數(shù),如果該參數(shù)是一個(gè)對(duì)象,則直接返回這個(gè)對(duì)象,如果是一個(gè)原始類型的值,則返回該值對(duì)應(yīng)的包裝對(duì)象

   var o1 = {a: 1};
   var o2 = new Object(o1);
   o1 === o1 // true 

   var obj = new Object(123);
   obj instanceof Number // true

構(gòu)造函數(shù)的用法與工具方法不同點(diǎn)

Object(value)表示將value轉(zhuǎn)成一個(gè)對(duì)象

new Object(value)表示生成一個(gè)對(duì)象,它的值是value

部署在Object對(duì)象自身的方法 Object.keys()
用來(lái)遍歷對(duì)象的屬性

Object.keys方法的參數(shù)是一個(gè)對(duì)象,返回一個(gè)數(shù)組,該數(shù)組的成員都是該對(duì)象自身的所有屬性名,而不是繼承的屬性名

只返回可枚舉的屬性

var obj = {
    p1: 123,
    p2: 456,
};
Object.keys(obj) // ["p1", "p2"]
Object.getOwnPropertyNames()
用來(lái)遍歷對(duì)象的屬性

接受一個(gè)對(duì)象作為參數(shù),返回一個(gè)數(shù)組,包含了該對(duì)象自身的所有屬性名

還返回不可枚舉的屬性名

var obj = {
    p1: 123,
    p2: 456,
};
Object.keys(obj) // ["p1", "p2"]

var a = ["hello", "hi"];
Object.keys(a) // ["0", "1"]
Object.getOwnPropertyNames(a) // ["0", "1", "length"]

可以用上面兩個(gè)方法提供計(jì)算對(duì)象屬性個(gè)數(shù)的方法

var obj = {
    p1: 1,
    p2: 2
};
Object.keys(obj).length // 2
Object.getOwnPropertyNames(obj).length // 2
其他方法

對(duì)象屬性模型的相關(guān)方法

Object.getOwnPropertyDescriptor():獲取某個(gè)屬性的描述對(duì)象
Object.defineProperty():通過(guò)描述對(duì)象,定義某個(gè)屬性
Object.defineProperties():通過(guò)描述對(duì)象,定義多個(gè)屬性

控制對(duì)象狀態(tài)的方法

Object.preventExtensions():防止對(duì)象擴(kuò)展
Object.isExtensible():判斷對(duì)象是否可擴(kuò)展
Object.seal():禁止對(duì)象配置
Object.isSealed():判斷一個(gè)對(duì)象是否可配置
Object.freeze():凍結(jié)一個(gè)對(duì)象
Object.isFrozen():判斷一個(gè)對(duì)象是否被凍結(jié)

原型鏈相關(guān)方法

Object.create():該方法可以指定原型對(duì)象和屬性,返回一個(gè)新的對(duì)象
Object.getPrototypeOf():獲取對(duì)象的Prototype對(duì)象

Object的實(shí)例方法
定義在Object.prototype對(duì)象,所有Object的實(shí)例對(duì)象都繼承了這些方法
主要的Object實(shí)例對(duì)象的方法

Object.prototype.valueOf():返回當(dāng)前對(duì)象對(duì)應(yīng)的值

Object.prototype.toString():返回當(dāng)前對(duì)象對(duì)應(yīng)的字符串形式

Object.prototype.toLocaleString():返回當(dāng)前對(duì)象對(duì)應(yīng)的本地字符串形式

Object.prototype.hasOwnProperty():判斷某個(gè)屬性是否為當(dāng)前對(duì)象自身的屬性,還是繼承自原型對(duì)象的屬性

Object.prototype.isPrototypeOf():判斷當(dāng)前對(duì)象是否為另一個(gè)對(duì)象的原型

Object.prototype.propertyIsEnumerable():判斷某個(gè)屬性是否可枚舉

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/108031.html

相關(guān)文章

  • Object 的各種方法

    摘要:等同于構(gòu)造函數(shù)與的用法很相似,幾乎一模一樣。實(shí)例對(duì)象的方法接受一個(gè)字符串作為參數(shù),返回一個(gè)布爾值,表示該實(shí)例對(duì)象自身是否具有該屬性。等同于方法生成的對(duì)象,繼承了它的原型對(duì)象的構(gòu)造函數(shù)。 分類 Object() 函數(shù) Object 本身是一個(gè)函數(shù),用來(lái)將任意值轉(zhuǎn)為對(duì)象。 如果參數(shù)為空(或者為 undefined 和 null),Object() 返回一個(gè)空對(duì)象。 var obj = Ob...

    gghyoo 評(píng)論0 收藏0
  • 標(biāo)準(zhǔn)庫(kù)(一)object對(duì)象

    摘要:控制對(duì)象狀態(tài)的方法防止對(duì)象擴(kuò)展。判斷一個(gè)對(duì)象是否被凍結(jié)。返回當(dāng)前對(duì)象對(duì)應(yīng)的值。方法的作用是返回一個(gè)對(duì)象的字符串形式上面代碼表示,對(duì)于一個(gè)對(duì)象調(diào)用方法,會(huì)返回字符串用途通過(guò)自定義方法,可以讓對(duì)象在自動(dòng)類型轉(zhuǎn)換時(shí),得到想要的字符串形式。 概述Object()Object 構(gòu)造函數(shù)Object 的靜態(tài)方法「本身的方法Object.keys(),Object.getOwnPropertyNam...

    Muninn 評(píng)論0 收藏0
  • JavaScript引用類型---Object

    摘要:一對(duì)象初始化創(chuàng)建對(duì)象的兩種方法對(duì)象初始化器或?qū)ο笞置媪繀?shù)成對(duì)的名稱字符串與值任何值,其中名稱通過(guò)冒號(hào)與值分隔之后簡(jiǎn)化了字面量寫法寫法以構(gòu)造函數(shù)形式來(lái)調(diào)用參數(shù)任何值訪問(wèn)對(duì)象屬性對(duì)象屬性可以用下標(biāo)小圓點(diǎn)標(biāo)記或者方括號(hào)標(biāo)記訪問(wèn)從開(kāi)始,對(duì)象初始化 一、對(duì)象初始化 創(chuàng)建對(duì)象的兩種方法: 1.對(duì)象初始化器或?qū)ο笞置媪浚簕[nameValuePair1[, nameValuePair2[, ......

    RobinTang 評(píng)論0 收藏0
  • 《JavaScript程序設(shè)計(jì)》—— 標(biāo)準(zhǔn)對(duì)象 Object

    摘要:需要鏈接標(biāo)準(zhǔn)參考教程對(duì)象阮一峰標(biāo)準(zhǔn)構(gòu)造器函數(shù)可能是最重要的對(duì)象之一,盡管我們從來(lái)不會(huì)直接調(diào)用它。該方法返回被凍結(jié)的對(duì)象。 Object 需要鏈接: MDN —— Object JavaScript標(biāo)準(zhǔn)參考教程(Object對(duì)象)——阮一峰 標(biāo)準(zhǔn)構(gòu)造器函數(shù)Object可能是JavaScript最重要的對(duì)象之一,盡管我們從來(lái)不會(huì)直接調(diào)用它。每當(dāng)使用一個(gè)對(duì)象直接量時(shí),都會(huì)隱式調(diào)用它: ...

    Meils 評(píng)論0 收藏0
  • JavaScript之Object

    摘要:當(dāng)以非構(gòu)造函數(shù)形式被調(diào)用時(shí),等同于。因此只有字符串會(huì)以數(shù)組形式,拷貝入目標(biāo)對(duì)象,其他值即數(shù)值字符串和布爾值都不會(huì)產(chǎn)生效果。注意,布爾值數(shù)值字符串分別轉(zhuǎn)成對(duì)應(yīng)的包裝對(duì)象時(shí),它們的原始值都在包裝對(duì)象的內(nèi)部屬性上面。擁有布爾值的字段的默認(rèn)值都是。 Object Object構(gòu)造函數(shù)創(chuàng)建一個(gè)對(duì)象包裝器。如果給定值是 null or undefined,將會(huì)創(chuàng)建并返回一個(gè)空對(duì)象,否則,將返回一個(gè)...

    高勝山 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<