可能的重复:
在 Javascript 中使用“prototype”与“this”?
我对这两种向函数添加方法的类型感到困惑。让我用一个例子来解释一下。
var foo = function(){
this.bar = function(){alert('I am a method')}
}
foo.prototype.baz = function(){alert('I am another method')}
var car = new foo();
现在我们可以对汽车使用 baz 和 bar 方法。好吧,但是它们之间有什么区别。向函数的原型或其构造函数添加方法有什么细微差别。
Thanks..
分配给的功能prototype
将被所有实例共享;构造函数中分配的函数每个实例都有一个单独的函数对象。
此外,构造函数中分配的函数可以使用构造函数的变量和参数。
例如:
var foo = function(param){
this.bar = function() { alert('I can see a parameter: ' + param); };
}
foo.prototype.baz = function() { alert('I can't see foo's parameters'); };
var car = new foo("Hi there!");
car.bar();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)