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