var x = function (){
this.add = function (a,b){ return a + b;}
}
var x = function (){};
x.add = function (a,b){ return a + b;};
var x = function (){}
x.prototype.add = function (a,b){ return a + b;}
var x = {};
x.add = function (a,b){ return a + b;}
有人可以解释上面各种声明之间的区别吗?
由于
答案 0 :(得分:2)
声明可以使用new x
实例化的“类”,它将使用公共方法“add”,此处的“this”在实例化之后引用对象本身。
为函数x添加'static'方法,这是可能的,因为函数是对象。
将'add'函数添加到x的原型中,x的所有实例都将继承它。
向对象x添加属性“add”并将其设置为函数定义。这就像创建一个实例而没有创建过类。