JavaScript 原型:深入理解对象模板和继承机制
JavaScript 中的'原型'是指每个对象都有一个原型对象,它充当了对象的模板,用于定义对象的属性和方法。每个 JavaScript 对象都有一个原型对象,它是由构造函数创建的。原型对象可以包含共享的属性和方法,这些属性和方法可以被所有由该构造函数创建的对象所共享。
当访问一个对象的属性或方法时,如果对象本身没有这个属性或方法,JavaScript 会沿着原型链向上查找,直到找到为止。
可以通过两种方式访问原型对象的属性和方法:
- 通过对象的'proto'属性访问原型对象的属性和方法。
例如:
var obj = {};
obj.__proto__.propertyName = 'value';
console.log(obj.propertyName); // value
- 通过对象的构造函数的'prototype'属性访问原型对象的属性和方法。
例如:
function MyObject() {}
MyObject.prototype.propertyName = 'value';
var obj = new MyObject();
console.log(obj.propertyName); // value
原型对象的属性和方法是通过引用共享的,这意味着当原型对象的属性或方法发生变化时,所有通过该原型创建的对象都会受到影响。因此,原型对象在 JS 中实现了对象的继承机制。
原文地址: https://www.cveoy.top/t/topic/mC2B 著作权归作者所有。请勿转载和采集!