我可以将其他参数传递给JavaScript map()回调函数吗?

我可以将其他参数传递给JavaScript map()回调函数吗?,javascript,Javascript,我有一个数组,现在我想对数组中的每个元素执行一个函数 我正在尝试使用map()函数。问题是,传递给map()的回调函数有自己的参数(不是元素、索引、数组) 我可以将参数传递给这样的回调函数吗?如何实现?我认为您可能需要将原始函数包装到另一个回调函数中,如下所示: var数组=['1','2','skip-a-move','3','four'] console.log( array.map(函数(元素){ 返回原始值('其他','变量',元素) }) ) //这个函数并不重要,只是一个例子 功能

我有一个数组,现在我想对数组中的每个元素执行一个函数

我正在尝试使用
map()
函数。问题是,传递给
map()
的回调函数有自己的参数(不是元素、索引、数组)


我可以将参数传递给这样的回调函数吗?如何实现?

我认为您可能需要将原始函数包装到另一个回调函数中,如下所示:

var数组=['1','2','skip-a-move','3','four']
console.log(
array.map(函数(元素){
返回原始值('其他','变量',元素)
})
)
//这个函数并不重要,只是一个例子
功能原件(a、b、c){
返回a+“”+b+“”+c

}
我可以想出两种不同的方法:

使用
thisArg
将选项对象设置为回调中的
this
值:

var数=[1,2,3,4,5,6,7,8,9,10];
函数回调(元素){
返回元素+this.add;
};
var mapped=numbers.map(回调{
地址:10
});

console.log(映射)你是什么意思
map((elm,index)=>{func(params);})
?您可以在回调函数上使用,将参数前置到回调函数,即您的函数将有一个参数列表,如
(arg1,arg2,/*等*/,元素,索引,数组)
谢谢。这周我刚开始学习Javascript。据我所知,这是一个函数的环境。对于第一个解决方案,我认为您要做的是将
这个
对象传递给回调。这
指的是什么?@Jinglei.Y通常
指的是函数作为方法调用的对象。数组映射方法允许指定
这个
对象应该是什么,因为它不是作为方法调用函数,这可能非常有用。在本例中,我只设置了一个特定的this值,它是我自己的对象。这个问题更详细地讨论了
这个
对象:在2个解决方案中,我最喜欢解决方案一,因为它避免了使用bind,这对我来说似乎有点不太方便。每种方法的优缺点是什么?