Javascript TypeError: Object 没有方法

Javascript TypeError: Object Has No Method

本文关键字:有方法 Object TypeError Javascript      更新时间:2023-09-26

无论出于何种原因,我在创建numberOne作为Num实例时都会TypeError: Object #<Num> has no method 'getNumber'

function Num(n) {
    var number = n;
    var getNumber = function() {
        return number;
    };
}
var numberOne = new Num(5);
console.log(numberOne.getNumber());

您将getNumber声明为函数内的局部变量。这些不会成为构造对象的属性。

使用this

  this.getNumber = function() { ...

在构造函数中,this 是指要初始化的新创建的对象。

还可以使用原型机制来提供对象属性。

您正在创建一个名为 getNumber 的局部变量,而不将其附加到对象。 要么把它交给对象,要么把它放在原型上:

this.getNumber = function() {

function Num(n) {
    this.number = n;
}
Num.prototype.getNumber = function() {
    return this.number;
}

如果要创建大量对象,则可能需要getNumber放在原型上,这样它就不会在每次创建对象时都添加到对象中。