Javascript 如何向由构造函数生成的数组对象添加方法

Javascript 如何向由构造函数生成的数组对象添加方法,javascript,arrays,methods,Javascript,Arrays,Methods,试图解决以下问题 我有一个构造函数,如: function Person (name){ this.firstName = name; } 然后我制作了一些物品: var myFather = new Person("John"); var myMother = new Person("Mary"); var myChild = new Person ("Sonny"); 最后将它们连接在一起: var family = [myFather, myMother, myChild]; 现

试图解决以下问题

我有一个构造函数,如:

function Person (name){
  this.firstName = name;
}
然后我制作了一些物品:

var myFather = new Person("John");
var myMother = new Person("Mary");
var myChild = new Person ("Sonny");
最后将它们连接在一起:

var family = [myFather, myMother, myChild];

现在我想将一个方法driver()附加到“family”上,它将使用构造函数中的“firstName”变量来选择谁将驱动另一个类
family
,并向其添加
setDriver
方法:

职能人员(姓名){
this.firstName=name
}
功能族(成员){
这个.成员=成员;
this.driver=成员[0];
this.setDriver=函数(名称){
this.driver=this.members.filter(member=>member.firstName==name)[0]
}
}
var myFather=新人(“约翰”);
var myMother=新人(“玛丽”);
var myChild=新人(“桑尼”);
var family=新家庭([我的父亲、母亲、孩子]);
console.log(family.driver)
家庭。设置驱动(“桑尼”)

console.log(family.driver)
//首先应该从Person函数中删除逗号,并使用分号(;)

//只需创建函数

function driver(firstName = this.firstName) {
    console.log(`Drive is ${firstName}`)
}

driver.call(this, family[0].firstName)
//结果是约翰

//也可以直接调用驱动程序函数作为任何族对象的方法,如

driver.call(family[0])

//上面的代码将产生相同的结果,请尝试此代码

我认为此代码没有多大意义,它就像编写一个不相关的函数,显示传递给它的变量//首先,您应该从Person函数中删除逗号,并使用分号(;),谢谢您的指出。你已经改正了!