今回は、JavaScript で不特定多数の引数を受け取る関数を定義してみます。
受け取る引数の数が事前に決まっていない場合に便利です。
script.js
let attendMembers = [];
/**
* 引数の値を追加したリストを返す関数
* @param members
* @returns [attendMembers]
*/
function addMembers(...members) {
for (const added of members) {
attendMembers.push(added);
}
return attendMembers;
}
上記の addMembers() 関数では「...引数」という形で記述することで、引数で指定された不特定多数の値(参加するメンバー)を受け取ります。
関数の外で attendMembers という参加メンバーのリストを定義しておくことで、関数を実行するたびにリストが初期化されず、値を保持し続けます。
script.js
let attendList = addMembers("Flare", "Polka", "Miko", "Suisei", "Noel");
console.log(attendList);//['Flare', 'Polka', 'Miko', 'Suisei', 'Noel']
attendList = addMembers("Kanata", "Chloe", "AZKi");
console.log(attendList);//['Flare', 'Polka', 'Miko', 'Suisei', 'Noel', 'Kanata', 'Chloe', 'AZKi']
実際に addMembers() へ複数の引数を入れて実行してみると、参加者メンバーに引数の値が追加されます。
さらに3人分(不特定多数)のメンバーを追加してみると、元の値を保持したまま参加者リストに値が追加されます。
■参照
・JavaScript コードレシピ集 (2019)
→ 014 関数に任意の数の引数を渡したい
参加者リストのメンバーが気になりますか!?
VTuber 事務所である hololive の「不知火建設」と「かな建」のメンバーでした!
以下の動画も面白いのでぜひご覧ください!