前回、「関数」の書き方をAIに説明してもらうで苦手だったJavascriptの関数への理解がちょっとだけ深まったので、次は「引数(ひきすう)」のさまざまな書き方についてAIに教えてもらうことにしました。
引数とは?
関数に渡す値のことを「引数」といいます。
function greet(name) {
console.log("Hello " + name + "!");
}
greet("World"); // Hello World!この場合:
- nameが 引数(パラメータ)
- “World”が 実引数(実際に渡す値)
複数の引数
複数の値を渡すこともできます。
function add(a, b) {
return a + b;
}
console.log(add(3, 5)); // 8
console.log(add("Hello","World!")); // Hello World!引数の省略(未定義)
引数が足りない場合、渡されなかった引数はundefunedになります。
function helloTxt(name) {
console.log("Hello " + name + "!");
}
helloTxt(); // Hello undefinedデフォルト引数(初期値の設定)
値が渡されなかったときのためにデフォルト値を設定できます。
function greet(name = "World") {
console.log("Hello " + name + "!");
}
greet(); // Hello World!
greet("Everyone"); // Hello Everyone!可変長引数(rest parameter)
引数の数が決まっていないときは、「...」 を使います。
function greet(...strings) {
return strings.join("");
}
console.log(greet("Hello ", "w", "o", "r", "l", "d", "!")); // Hello world!function sum(...numbers) {
return numbers.reduce((total, num) => total + num, 0);
}
console.log(sum(1, 2, 3, 4)); // 10引数の順番を気にせず渡す方法(オブジェクト引数)
引数が多くなってきたら、オブジェクトで渡すのが便利です。
function createUser({ name1, name2 }) {
console.log(name1 + "は「こんにちは」、" + name2 + "は「世界!」です");
}
createUser({ name2: "World!", name1: "Hello" }); // Helloは「こんにちは」、World!は「世界!」ですまとめ
| 用語 | 内容 |
|---|---|
| 引数 | 関数で定義する受け取る値の名前 |
| 実引数 | 実際に関数を呼ぶときに渡す値 |
| デフォルト値 | 値が渡されなかったときの初期値 |
| 可変長引数 | 任意の個数の引数を配列として受け取る |
AIが教えてくれた引数の基本的な内容は、私の中では意外と理解ができていました。知りたいのはもっと別の感じの物です。
「さらに詳しく知りたい内容(例:スプレッド構文との違い、参照と値渡しの違いなど)があれば教えてください!」と続いたので、たぶん私が理解できていないことはその中にあるのだと思います。続きます。

Reply