在javascript中创建对象有什么区别
test = function(a, b){
this.calculate = function(){
return a + b;
}
}
obj = new test(1, 2);
console.log(obj.calculate());
和
test = function(a, b){
return {
calculate: function(){
return a + b;
}
}
}
obj = test(1, 2);
console.log(obj.calculate());
我在不同的情况下都使用过这两种方法,但从来不理解它们的区别,我知道后一种方法有为永远创建函数的开销,但仍然看到它在很多情况下使用,有人可以为我澄清一下吗?我无法通过搜索找到有关此的任何信息