Javascript 将多个对象传递给构造函数

Javascript 将多个对象传递给构造函数,javascript,Javascript,我有一个构造函数,用于将新数据推送到数组(在本例中为allEntries) 我正在尝试找出如何为this.info传递多个对象,类似于: allEntries.push( new entry( 'title one', ['info 1', 'info 2'] ) ); { title: 'title one', info : [ { name: 'info 1'}, { name: 'info 2'} ] }

我有一个构造函数,用于将新数据推送到数组(在本例中为
allEntries

我正在尝试找出如何为
this.info
传递多个对象,类似于:

allEntries.push( new entry( 'title one', ['info 1', 'info 2'] ) );
{
    title: 'title one', 
    info : [
            { name: 'info 1'},
            { name: 'info 2'}
        ]
}
为了获得类似于:

allEntries.push( new entry( 'title one', ['info 1', 'info 2'] ) );
{
    title: 'title one', 
    info : [
            { name: 'info 1'},
            { name: 'info 2'}
        ]
}

如何执行此操作?

传递一个数组并在其上迭代以使用添加所有项

可以这样称呼:

var myEntry = new entry('foobar', ['info1', 'info2']);

顺便说一句:通常,类的名字前面有一个大写字母,以便能够将它们与函数(总是小写)区分开来,所以你可能想把它命名为“Entry”。

这可以通过不同的方式来解决


我修复了一些明显的语法错误。这里不需要setter。这没有依赖注入无法完成的事情。介意我不同意吗?如果
info
是一个字符串数组,而
this.info
应该是一个对象数组,该对象的字符串存储在名为
name
的属性中,则为是。没错。我忽略了这样一个事实,他想要传递一个字符串数组,并将其转换为一个属性为
name
的对象数组,和字符串作为值。我得到了this.info.push的错误“无法调用未定义的”方法“push”part@cat-t:this作为第二个参数传递给
.forEach
info.forEach(函数(infoItem){…},this)
。另请参见:@crush:MDN的链接就足够了。人们可以在那里找到polyfill。
function entry () {
    this.title = null;
    this.info = [];
}

entry.prototype.setInfo = function (info) {
    this.info.push({name: info});

    return this;
};

entry.prototype.setTitle = function (title) {
    this.title = title;

    return this;
}

var e1 = (new entry)
    .setInfo('foo')
    .setInfo('bar')
    .setTitle('Hello World!');