/*
* 我們需要牢記兩點:
* 1. __proto__屬性是對象所獨有的壮虫;
* 2. constructor屬性: 只有prototype對象才有這個屬性,而其它對象的constructor屬性都是通過__proto__對象從prototype繼承而來
* 3. prototype屬性是函數(shù)所獨有的,因為函數(shù)也是一種對象肛搬,所以函數(shù)也擁有__proto__和constructor屬性岸啡。
* __proto__屬性的作用就是當訪問一個對象的屬性時,如果該對象內部不存在這個屬性抚恒,那么就會去它的__proto__屬性所指向的那個對象(父對象)里找咱台,一直找,
* 直到__proto__屬性的終點null俭驮,然后返回undefined回溺,再往上找就相當于在null上取值,會報錯混萝。通過__proto__屬性將對象連接起來的這條鏈路即我們所謂的原型鏈遗遵。
* prototype屬性的作用就是讓該函數(shù)所實例化的對象們都可以找到公用的屬性和方法,即f1.__proto__ === Foo.prototype逸嘀。
* constructor屬性的含義就是指向該對象的構造函數(shù)车要,所有函數(shù)(此時看成對象了)最終的構造函數(shù)都指向Function。 另外 __proto__ 屬性是瀏覽器對es5的實現(xiàn)崭倘,而不是es標準屯蹦。
* */
// 互相繼承
console.log(Object instanceof Function); // true
console.log(Function instanceof Object); // true
console.log(Object.constructor)
console.log(Function.constructor)
function demo () {}
//tips:單從constructor屬性來講,只有prototype對象才有這個屬性绳姨,而其它對象的constructor屬性都是通過__proto__對象從prototype繼承而來
console.log(demo.constructor === Function) // true
console.log(demo.prototype.constructor === demo) // true
// 函數(shù)在創(chuàng)建時登澜,JS會為該函數(shù)創(chuàng)建一個對應的prototype對象,而這個prototype對象的constructor屬性又指向該函數(shù)飘庄,demo.prototype.constructor === demo
const a = new Object()
console.log(typeof Object); // function
console.log(typeof a) // object
console.log(typeof Object.__proto__) // function
console.log(typeof a.__proto__) // object
JS中的prototype凸椿、__proto__與constructor
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門掀虎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來凌盯,“玉大人,你說我怎么就攤上這事烹玉〕墼酰” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵二打,是天一觀的道長县忌。 經常有香客問我,道長继效,這世上最難降的妖魔是什么症杏? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮瑞信,結果婚禮上厉颤,老公的妹妹穿的比我還像新娘。我一直安慰自己喧伞,他們只是感情好走芋,可當我...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著潘鲫,像睡著了一般翁逞。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上溉仑,一...
- 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼后频!你這毒婦竟也來了梳庆?” 一聲冷哼從身側響起暖途,我...
- 正文 年R本政府宣布竖伯,位于F島的核電站,受9級特大地震影響因宇,放射性物質發(fā)生泄漏七婴。R本人自食惡果不足惜,卻給世界環(huán)境...
- 文/蒙蒙 一察滑、第九天 我趴在偏房一處隱蔽的房頂上張望打厘。 院中可真熱鬧,春花似錦贺辰、人聲如沸户盯。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽莽鸭。三九已至,卻和暖如春吃靠,著一層夾襖步出監(jiān)牢的瞬間硫眨,已是汗流浹背。 一陣腳步聲響...
推薦閱讀更多精彩內容
- https://blog.csdn.net/cc18868876837/article/details/81211729
- 文章目錄 1. 前言[https://blog.csdn.net/cc18868876837/article/de...
- 原文地址 blog.csdn.net[https://blog.csdn.net/cc18868876837/ar...
- 本文基于谷歌瀏覽器(版本 72.0.3626.121)的實驗結果所得。 我們從如下一個簡單的例子展開討論伞广,并配以相...
- js里的proto和prototype到底有什么區(qū)別嚼锄?http://www.reibang.com/p/80bc...