JavaScript中prototype的理解

2021-07-28 09:16:17 字數 504 閱讀 5246

prototype使我們能夠向物件新增屬性或者方法。

語法:object.prototype.name = value;  

2.基於原型的繼承

obj2 和obj3都是函式foo的例項,可以看到每個例項不僅有自己自身的屬性,還具有原型鏈上的x(也就是foo.prototype) 

3.prototype與原型

通過上圖我們可以看出foo.prototype屬性預設有兩個屬性,乙個數constructor指向foo,乙個是__proto__(該屬性是chrome暴露的,不是乙個標準的屬性),例項obj3的__proto__和foo.prototype一樣,即obj3.__proto__ === foo.prototype

所以,prototype和原型是兩回事,prototype是函式物件上的預設屬性,原型通常是構造器new出來物件的原型,通常是構造器的prototype屬性。

原型跟原型鏈 prototype跟proto

1.原型跟原型鏈 每個物件都有乙個原型物件,物件是以其為模板,從原型繼承方法和屬性。原型物件也有原型,並從中繼承方法跟屬性,一層一層,這種關係就是原型鏈。這些屬性跟方法是定義在object的建構函式的prototype屬性上的,而非物件例項本身。在傳統的物件導向語言中,是通過定義乙個類,此後建立物件...

javascript中處理時間

var mydate new date mydate.getyear 獲取當前年份 2007 mydate.getfullyear 獲取完整的年份 2007 mydate.getmonth 獲取當前月份 0 11,0代表1月 11 mydate.getdate 獲取當前日 1 31 20 mydat...

javascript中處理時間

var mydate new date mydate.getyear 獲取當前年份 2007 mydate.getfullyear 獲取完整的年份 2007 mydate.getmonth 獲取當前月份 0 11,0代表1月 11 mydate.getdate 獲取當前日 1 31 20 mydat...