让我们看看这两个例子:
第一
function Cars (name, doors) {
this.name = name;
this.doors = doors;
function getInfo() {
return this.name + " " + this.doors;
};
}
第二
function Cars (name, doors) {
this.name = name;
this.doors = doors;
}
Cars.prototype.getInfo = function() {
return this.name + " " + this.doors;
}
我知道在第一个示例中将getInfo()
方法保存为对象实例会浪费内存this.getInfo() = function() { this.cars + " " + this.doors;}
并且它会被继承,但是如果将该方法定义为非对象则会有所不同属性 - 就像我在第一个例子中所做的那样而不是作为对象实例(我在这里缺少单词),除了它将被静态定义?
之间有什么区别
this.getInfo() = function() {
return this.cars + " " + this.doors;
}
和
function getInfo() {
return this.cars + " " + this.doors;
}
表现和所有其他差异?
此外,有没有办法使用obj.prototype
访问私有局部变量?
感谢。