无论出于什么原因,在创建TypeError: Object #<Num> has no method 'getNumber'
作为numberOne
的实例时都会得到Num
function Num(n) {
var number = n;
var getNumber = function() {
return number;
};
}
var numberOne = new Num(5);
console.log(numberOne.getNumber());
最佳答案
您正在创建一个名为getNumber
的局部变量,而不将其附加到该对象。要么将其提供给对象,要么将其放在原型中:
this.getNumber = function() {
要么
function Num(n) {
this.number = n;
}
Num.prototype.getNumber = function() {
return this.number;
}
如果要创建许多对象,则可能要在原型上放置
getNumber
,这样就不会在每次创建对象时就将其添加到对象中。