/**
* 原型模式
* 1仇穗、優(yōu)點(diǎn)
* a端朵、可以讓所有的實(shí)例對(duì)象共享它所包含的屬性光督、方法
* 因?yàn)檫@些屬性苛茂、方法是綁定在實(shí)例對(duì)象中的 __proto__ 屬性上的
* __proto__ 屬性這個(gè)指針指向的就是構(gòu)造函數(shù)自身
*/
function PrototypeMode () { }
PrototypeMode.prototype.name = 'tang'
PrototypeMode.prototype.sex = 'man'
PrototypeMode.prototype.job = 'web design'
PrototypeMode.prototype.speak = function () {
console.log('hello...')
}
// 對(duì)象實(shí)例共享數(shù)據(jù)
const p1 = new PrototypeMode()
const p2 = new PrototypeMode()
console.log(p1)
console.log(p1.speak === p2.speak) // true
console.log(p1.name === p2.name) // true
p1 打印如下
image.png
構(gòu)造函數(shù)、構(gòu)造函數(shù)實(shí)例對(duì)象爱咬、構(gòu)造函數(shù)原型屬性 之間的關(guān)系
image.png