js原型和原型鏈

2021-10-08 12:09:43 字數 971 閱讀 1336

/*總結:

1.new乙個物件,首先會讀取例項物件的屬性,若無,讀取函式本身的屬性;

若無,讀取函式原型的屬性;

2.若例項物件設定了屬性,又刪除了屬性,則會讀取函式原型中的屬性*/

//函式本身的屬性

functionfn(

)var f1 =

newfn()

//給函式原型設定屬性

fn.prototype.name =

'原型name屬性'

fn.prototype.age =

'原型age屬性'

var f2 =

newfn()

var f3 =

newfn()

//設定例項屬性

f3.name =

'例項name屬性'

console.

log(f1.name,f1.age)

//函式name屬性,原型age屬性

console.

log(f2.name,f2.age)

//函式name屬性,原型age屬性

console.

log(f3.name,f3.age)

//例項name屬性,原型age屬性

//刪除例項屬性,則例項此時指向的是函式的原型

delete f3.name

console.

log(f3.name,f3.age)

//原型name屬性,原型age屬性

三種獲取原型的方法

console.

log(object.

getprototypeof

(f1)

)//推薦使用

console.

log(f1.__proto__)

console.

log(f1.constructor.prototype)

JS原型和原型鏈

建立建構函式 function word words word.prototype 建立例項 var w new word hello world w.print function w.print hello world w.alert hello world function.prototype....

js原型鏈和原型

1 原型 在js中一切皆物件,那原型也是乙個物件,通過原型可以實現物件的屬性繼承,js的物件中包含著乙個 prototype 內部屬性,這個屬性所對應的就是物件的原型。prototype 作為物件的內部屬性不能被直接訪問,所以為了方便檢視乙個物件的原型,提供了 proto 這個非標準的訪問器,在js...

JS 原型和原型鏈

先宣告乙個建構函式 function people name,age 把類的方法寫在建構函式原型物件中,子類就不能再通過呼叫父類建構函式來繼承方法 屬性還是可以繼承 給people的原型新增方法 people.prototype.speak function 建立子類繼承people functio...