未定义的项目推入我的数组?
问题描述:
我创建一个对象,并推送到一个数组this.reminders,但未定义也得到推为什么是这样的?此代码会给我工作[ { description: 'Get to work in time', set_title: 'work related' }, undefined ]
未定义的项目推入我的数组?
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) { /*...*/ }
但你只能通过一个(即Reminder
对象):
var work = new ReminderSet("work")
.add(new Reminder("Get to work in time", "work related"));
这导致第二个参数未定义。
+0
right oh my gawd im just probably hungry –
好吧,你的add方法会提示和标题,但是你的代码会用一个新的提醒对象调用它,并且没有标题;) – Icepickle