引数の数が多いときは引数をオブジェクトにする[JavaScript]

なにかしらの処理をする関数があるとして、途中から意図せず引数が増えていってしまう場合があります。


function example(paramA,paramB,...paramZ){
 const name = paramA;
 const age = paramB;
 // ... 
 // do something
} 

example(paramA,paramB,paramD,paramE,paramC...)

このように引数の数が増えてくると、順番を間違える、どれが必須でどれが任意かわからなくなって混乱してしまうなどエラーの温床になってしまうので、オブジェクトにして渡す方が安全で便利で楽です。

function example( obj ){
 const name = obj?.name;
 const age = obj?.age
 // do something
 }

 example({
   name:"Taro",
   age: 21,
 })

引数をオブジェクトにしておくことで、順番や必須/任意などをあまり気にすることなく書けます。また、分割代入を使うこともできます。

function jikoShokai( {name} ){
 console.log( `I'm ${name} `) 
}

const obj = {
 name: 'Saburou',
 age: 16, 
 job: 'Student' 
}
jikoShokai(obj)

タイトルとURLをコピーしました