本文实例讲述了JavaScript使用Prototype实现面向对象的方法。分享给大家供大家参考。具体分析如下:
prototype 是 Function 对象的一个属性,这个属性指向另一个对象。 这个对象的所有属性和方法,都会被构造函数的实例继承。
同时 prototype 又存在一个指向构造函数的引用 constructor,这样就成功的构成一个循环引用的原型链结构。
我们可以把那些不变的属性和方法,直接定义在 prototype 对象上, 节省内存开销。
function Cat(name, color) { this.name = name; this.color = color;}Cat.prototype.type = 'mammal';Cat.prototype.eat = function() { console.log('eat fish');};var cat1 = new Cat('Kitty', 'white');var cat2 = new Cat('Smokey', 'black');console.log(cat1.type); // mammalconsole.log(cat1.eta === cat2.eta);// TRUE, same referenceconsole.log(cat1.constructor === Cat)// TRUE, from Person.prototype
希望本文所述对大家的javascript程序设计有所帮助。
新闻热点
疑难解答