Javascript 使用函数将对象添加到对象数组中?

Javascript 使用函数将对象添加到对象数组中?,javascript,arrays,function,object,arrayobject,Javascript,Arrays,Function,Object,Arrayobject,我了解将对象添加到数组所需的命令。我知道它的数组。推(对象) 但是,假设我有这个对象数组: const艺术家=[{ “排名”:1, “名称”:“Rakim”, “年份”:1985年, “专辑”:“全额支付”, }, { “排名”:2, “名称”:“Nas”, “年份”:1994年, “相册”:“Illmatic” } ]您需要使用以下命令将对象的数组传递给函数,并将其传递给初始的艺术家(应该是let): let美术师=[ { “排名”:1, “名称”:“Rakim”, “年份”:1985年,

我了解将对象添加到数组所需的命令。我知道它的
数组。推(对象)

但是,假设我有这个对象数组:

const艺术家=[{
“排名”:1,
“名称”:“Rakim”,
“年份”:1985年,
“专辑”:“全额支付”,
},
{
“排名”:2,
“名称”:“Nas”,
“年份”:1994年,
“相册”:“Illmatic”
}

]
您需要使用以下命令将对象的
数组
传递给函数,并将其传递给初始的
艺术家(应该是
let
):

let美术师=[
{
“排名”:1,
“名称”:“Rakim”,
“年份”:1985年,
“专辑”:“已全额支付”
},
{
“排名”:2,
“名称”:“Nas”,
“年份”:1994年,
“相册”:“Illmatic”
}
]
功能添加艺术家(艺术家添加){
艺术家。推送(…艺术家添加);
回归艺术家;
}
常量对象=[
{
“排名”:3,
“姓名”:“鲍勃”,
“年份”:1995年,
“相册”:“相册3”
},
{
“排名”:4,
“名称”:“Nas”,
“年份”:1992年,
“相册”:“相册4”
}
];

console.log(addArtist(objects))如果您一次只需要添加一个新的艺术家-例如,根据用户在页面上的输入,您可以执行以下操作:

const艺术家=[{
“排名”:1,
“名称”:“Rakim”,
“年份”:1985年,
“专辑”:“已全额支付”
},
{
“排名”:2,
“名称”:“Nas”,
“年份”:1994年,
“相册”:“Illmatic”
}
]
函数addNewArtist(r,n,y,a){
推动({“等级”:r,“名称”:n,“年份”:y,“专辑”:a});
}
addNewArtist(3,“Bob”,1999年,“他的新作品”);
addNewArtist(4,“Joe”,2015,“他的最新作品”);

console.log(艺术家)如果您想将代码分为多个文件,并且不想用global
Artisters
变量污染您的全局范围,或者您有多个带有
Artisters
接口的变量,您可以使用:

函数添加艺术家(艺术家,…新艺术家){
艺术家。推送(…新艺术家);
回归艺术家;
}
上面的脚本修改作为第一个参数传递的数组,因为数组是JavaScript中的引用类型

但是,上面提出的函数(没有类型检查)非常通用
addToArray
函数。因此,从编程风格的角度来看,我会考虑采用更精确的实现方式,例如:

function addArtist(艺术家、排名、姓名、年份、专辑){
艺术家。推送({排名、姓名、年份、专辑});
回归艺术家;
}

您有语法错误。。在第一个对象中添加
“相册”:“全额付款”,},
,艺术家。concat(新对象)