成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Object對(duì)象

chaosx110 / 861人閱讀

摘要:對(duì)象所有對(duì)象都繼承它,同時(shí)它還是一個(gè)構(gòu)造函數(shù)。等等的應(yīng)用第二個(gè)參數(shù)就是該對(duì)象的構(gòu)造函數(shù)如果對(duì)象重寫了函數(shù)那就使用去搞,會(huì)發(fā)現(xiàn)大部分構(gòu)造函數(shù)都重寫了方法

1. Object對(duì)象:

所有對(duì)象都繼承它,同時(shí)它還是一個(gè)構(gòu)造函數(shù)。

2. 構(gòu)造函數(shù):

所有構(gòu)造函數(shù)都有一個(gè)prototype屬性,指向原型對(duì)象。凡是定義在Object.prototype對(duì)象上面的屬性和方法,將被所有實(shí)例對(duì)象共享。

3. 原型對(duì)象: 4. 構(gòu)造函數(shù)的方法:
Object.print1 = (o)=>{console.log(o);}
const o = new Object({a:1});
Object.print1(o);// {a:1}
5. 實(shí)例對(duì)象的方法:
Object.prototype.print2 = ()=>{// 這里使用了箭頭函數(shù),使得this指向了window
  console.log(this);
}
Object.prototype.print3 = function(){// 實(shí)例對(duì)象繼承原型的所有屬性和方法
  console.log(this);
}
const o = new Object({a:1});
o.print2();// {}
o.print3();// {a:1}
6. 原始類型和包裝對(duì)象:三個(gè)包裝對(duì)象Number,String,Boolean
Object() // 返回一個(gè)空對(duì)象
Object() instanceof Object // true

Object(undefined) // 返回一個(gè)空對(duì)象
Object(undefined) instanceof Object // true

Object(null) // 返回一個(gè)空對(duì)象
Object(null) instanceof Object // true

Object(1) // 等同于 new Number(1)
Object(1) instanceof Object // true
Object(1) instanceof Number // true

Object("foo") // 等同于 new String("foo")
Object("foo") instanceof Object // true
Object("foo") instanceof String // true

Object(true) // 等同于 new Boolean(true)
Object(true) instanceof Object // true
Object(true) instanceof Boolean // true
7. 如果Object構(gòu)造函數(shù)的參數(shù)是一個(gè)對(duì)象,它總返回原對(duì)象
var arr = [];
Object(arr) // 返回原數(shù)組
Object(arr) === arr // true

var obj = {};
Object(obj) // 返回原對(duì)象
Object(obj) === obj // true

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

利用它可以判斷變量是否為對(duì)象

function isObject(value) {
  return value === Object(value);
}

isObject([]) // true
isObject(true) // false
8. 靜態(tài)方法:

Object本身的方法,前面說的構(gòu)造函數(shù)的方法,就是靜態(tài)方法。此外還有好多,如Object.keys()等。

9. 實(shí)例方法:Object.protoType上的方法。如
valueOf():返回當(dāng)前對(duì)象對(duì)應(yīng)的值。
toString():返回當(dāng)前對(duì)象對(duì)應(yīng)的字符串形式。
等等
10. toString的應(yīng)用:
const a = {a:1};
console.log(a.toString());//[object Object] 第二個(gè)參數(shù)就是該對(duì)象的構(gòu)造函數(shù)

如果a對(duì)象重寫了toString函數(shù)

const a = {
    a: 1,
    toString: function() {
        return this;
    }
};
console.log(a.toString());// { a: 1, toString: [Function: toString] }

那就使用Object.protoType.toString去搞,會(huì)發(fā)現(xiàn)大部分構(gòu)造函數(shù)都重寫了toString方法

const a = {
    a: 1,
    toString: function() {
        return this;
    }
};
console.log(1,a.toString());// 1 { a: 1, toString: [Function: toString] }
console.log(2,Object.prototype.toString.call(a));// 2 "[object Object]"

const b = "bbb";
console.log(3,b.toString());// 3 "bbb"
console.log(4,Object.prototype.toString.call(b));// 4 "[object String]"

const c = 23;
console.log(5,c.toString());// 5 "23"
console.log(6,Object.prototype.toString.call(c));// 6 "[object Number]"

const d = [];
console.log(7,d.toString());// 7 ""
console.log(8,Object.prototype.toString.call(d));// 8 "[object Array]"

const e = () => { a: 1 };
console.log(9,e.toString());// 9 "() => { a: 1 }"
console.log(10,Object.prototype.toString.call(e));// 10 "[object Function]"

const f = true;
console.log(11,f.toString());// 11 "true"
console.log(12,Object.prototype.toString.call(f));// 12 "[object Boolean]"

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

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/84885.html

相關(guān)文章

  • Object 的各種方法

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

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

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

    Muninn 評(píng)論0 收藏0
  • Object對(duì)象

    摘要:前言原生提供對(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í)例...

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

    摘要:一對(duì)象初始化創(chuàng)建對(duì)象的兩種方法對(duì)象初始化器或?qū)ο笞置媪繀?shù)成對(duì)的名稱字符串與值任何值,其中名稱通過冒號(hào)與值分隔之后簡化了字面量寫法寫法以構(gòu)造函數(shù)形式來調(diào)用參數(shù)任何值訪問對(duì)象屬性對(duì)象屬性可以用下標(biāo)小圓點(diǎn)標(biāo)記或者方括號(hào)標(biāo)記訪問從開始,對(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ì)象之一,盡管我們從來不會(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ì)象之一,盡管我們從來不會(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)論

chaosx110

|高級(jí)講師

TA的文章

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