Javascript 中对象中的函数方法

Function method in object in Javascript

我正在做一个 Javascript 对象练习。我的输出不是我所期望的。请看看我的代码并提供一些建议。这是代码:

function myFunction(name) {
  this.name = name;
  this.models = new Array();
  this.add = function (brand){ 
    this.models =  brand;
  };
}
var c = new myFunction ("pc");
c.add("HP");
c.add("DELL");
console.log(c.models);

输出为"DELL"

我的预期输出是 ["HP","DELL"]

非常感谢您的帮助!

要向数组添加内容,您应该使用 .push() 方法。

将您的代码更改为:

function myFunction(name) {
  this.name = name;
  this.models = new Array();
  this.add = function (brand){ 
    this.models.push(brand);
  };
}

P.S。这种构造函数类型习惯上以大写字母开头。

更改添加功能。您想将品牌推入模型中。没有给它设置模型。

this.add = function (brand){ 
    this.models.push(brand);
};