Consider the following piece of code:
var Animal = function(name) {
return {
name: name,
speak: function() { return "My name is " + name; }
};
};
var cat = Animal("Kitty");
我的问题是:就性能,约定或最佳实践而言,上述代码与以下代码之间有何区别:
var Animal = function(name) {
this.name = name,
this.speak = function() { return "My name is " + name; }
};
var cat = new Animal("Another Kitty");
哪个更好?new
关键字有哪些使用场景?
Animal.prototype
的Animal
实例。 “哪一个更好?” 取决于你问谁。 有些人尽量避免使用new
。 - Felix Kling