Javascript 在我的数组中推送未定义的项?

Javascript 在我的数组中推送未定义的项?,javascript,object,Javascript,Object,我正在创建一个对象并将其推送到一个数组中。提醒,但未定义的is也会得到推送。为什么?此代码将为我提供工作[{description:'Get to work in time',set_title:'work related',},未定义] var ReminderSet = function(set_name) { this.set_name = set_name; this.reminders = []; }; ReminderSet.

我正在创建一个对象并将其推送到一个数组中。提醒,但未定义的is也会得到推送。为什么?此代码将为我提供工作
[{description:'Get to work in time',set_title:'work related',},未定义]

   var ReminderSet = function(set_name) {
        this.set_name = set_name; 
        this.reminders = [];
    };

    ReminderSet.prototype.add = function(reminder, title) {
        this.reminders.push(reminder, title);
        console.log(this.set_name, this.reminders)

    };

    ReminderSet.prototype.list = function() {
        console.log(this.reminders); 
    };

    var Reminder = function(description,set_title) {
        this.description = description;
        this.set_title = set_title;
        //Describes the reminder
    };

var work = new ReminderSet("work")
          .add(new Reminder("Get to work in time", "work related"));
您的
add()
方法采用两个参数:

ReminderSet.prototype.add = function(reminder, title) { /*...*/ }
但您只传递了一个(即
提醒
对象):


这会导致第二个参数未定义。

嗯,您的add方法会推送提醒和标题,但您的代码使用新的提醒对象调用它,而没有标题;)
var work = new ReminderSet("work")
      .add(new Reminder("Get to work in time", "work related"));