Birden fazla argümana sahip bir JavaScript işlevi oluştururken, her zaman bu seçenekle karşı karşıya kalırım: bir argüman listesi geçirin ve bir seçenekler nesnesini geçirin.
Örneğin bir diziye bir nodeList eşlemek için bir işlev yazıyorum:
function map(nodeList, callback, thisObject, fromIndex, toIndex){
...
}
Bunun yerine kullanabilirsiniz:
function map(options){
...
}
burada seçenekler bir nesnedir:
options={
nodeList:...,
callback:...,
thisObject:...,
fromIndex:...,
toIndex:...
}
Hangisi önerilen yol? Birinin diğerine ne zaman kullanılacağına dair yönergeler var mı?
[Güncelleme] Seçenekler nesnesi lehine bir fikir birliği var gibi görünüyor, bu yüzden bir yorum eklemek istiyorum: benim durumumda argümanlar listesini kullanmak için cazip olmasının bir nedeni JavaScript ile tutarlı bir davranış vardı array.map yönteminde oluşturulmuştur.
Array.prototype.map
herhangi bir yarı deneyimli kodlayıcıyı şaşırtmayacak basit bir API'ye sahiptir.