创建这样的原型之间有什么区别:
Date.foo = function(bar) {
alert(bar);
};
而且:
Date.prototype.foo = function(bar) {
alert(bar);
};
为什么/何时使用?
答案 0 :(得分:2)
在第一个例子中,foo是一个构造函数方法,它就像java中的'static'方法。第二种方法就像在类上定义方法foo一样 - 它的范围是实例。
您可以访问第一个
Date.foo()
和第二个
Date d = new Date()
d.foo()
或在日期实例上的另一种方法
this.foo()