第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么定義Object前后Object.prototype.__proto__會有變化??

為什么定義Object前后Object.prototype.__proto__會有變化??

開心每一天1111 2019-03-14 18:13:34
為什么用 function 定義了就不同?是因為前后兩個 Object 不同嗎?打印兩者的差距就在,前者多了一句: native code。代碼圖:
查看完整描述

4 回答

?
Qyouu

TA貢獻1786條經(jīng)驗 獲得超11個贊

你可以搜一下那張經(jīng)典的原型鏈圖,我簡單說一下,首先Object.prototype.__proto__ === null,而Object.prototype === Person.prototype.__proto__,而下面你重寫了Object函數(shù),也就自然能夠log出函數(shù)體,在瀏覽器中,原生的函數(shù)toString方法log出的都是native code,這也成為判斷一個函數(shù)是否為原生函數(shù)的重要依據(jù)。

查看完整回答
反對 回復(fù) 2019-03-19
?
月關(guān)寶盒

TA貢獻1772條經(jīng)驗 獲得超5個贊

我的理解:
Object是內(nèi)置對象,之后你定義了一個函數(shù)是function Object(){}(以fnObj代稱);
這兩個對象是完全不一樣的;
內(nèi)置Object里有判斷是否是實例化new,可以直接自變量var a = {};
Object.prototype是原型鏈的最頂層的對象;所以 Object.prototype.__proto__ 只能是null;
fnObj是個函數(shù),它和function person(){}是一類的。
他們的prototype.__proto__ 是等于 Ojbect.prototype;
你用Object命名把內(nèi)置對象覆蓋掉,當你new實例化的時候 它將是fnObj實例


查看完整回答
反對 回復(fù) 2019-03-19
?
偶然的你

TA貢獻1841條經(jīng)驗 獲得超3個贊

  1. 前者和后者不同,前者是 window的一個屬性 Object;
    后者是定義了一個函數(shù)。

  2. 帶有 native code說明是原生的方法,里面是二進制碼。


查看完整回答
反對 回復(fù) 2019-03-19
  • 4 回答
  • 0 關(guān)注
  • 811 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號