多个参数与选项对象
在创建具有多个参数的JavaScript函数时,我总是面临这样的选择:传递参数列表与传递选项对象。
例如,我正在编写一个函数来将 nodeList 映射到数组:
function map(nodeList, callback, thisObject, fromIndex, toIndex){
...
}
我可以改用这个:
function map(options){
...
}
其中选项是一个对象:
options={
nodeList:...,
callback:...,
thisObject:...,
fromIndex:...,
toIndex:...
}
哪一种是推荐的方式?是否有关于何时使用一个与另一个的指南?
[更新]似乎有一个支持选项对象的共识,所以我想添加一个注释:在我的情况下,我试图使用参数列表的一个原因是要有一个与JavaScript内置的array.map方法一致的行为。