JavaScript では、オプションの引数を使用して関数パラメーターにデフォルト値を割り当てることができます。この機能は ES6/ES2015 で導入されました。デフォルトのパラメーター値を定義するには、以下に示すように、関数宣言内のパラメーターに目的の値を割り当てるだけです。
function read_file(file, delete_after = false) { // Code }
この場合、delete_after パラメーターのデフォルト値は false です。 delete_after パラメータの値を指定せずに関数が呼び出された場合は、デフォルト値が使用されます。ただし、このパラメータに値が渡されると、渡された値がデフォルトをオーバーライドします。
ES6 より前
デフォルト パラメータの導入前ES6 では、開発者はこの動作をシミュレートするためにさまざまな方法を採用しました。一般的なアプローチの 1 つは、typeof 演算子を使用してパラメーターが定義されているかどうかを確認し、それに応じてデフォルト値を割り当てることでした。以下に例を示します。
function foo(a, b) { a = typeof a !== 'undefined' ? a : 42; b = typeof b !== 'undefined' ? b : 'default_b'; ... }
デフォルト パラメータの構造化
ES6 では、名前付きパラメータのデフォルト値をシミュレートするために構造化を利用することもできます。デフォルト値を持つオブジェクトをパラメータに割り当てることで、オプションの引数を指定できます。次の例を考えてみましょう。
function myFor({ start = 5, end = 1, step = -1 } = {}) { // Use the variables `start`, `end` and `step` here ··· } // Sample calls myFor({ start: 3, end: 0 }); myFor(); // Without any parameters
この例では、myFor 関数が引数なしで呼び出された場合、start、end、step のデフォルト値が使用されます。あるいは、関数呼び出し中にこれらのパラメーターに特定の値が指定された場合、それらはデフォルトをオーバーライドします。
以上がJavaScript 関数でデフォルトのパラメータ値を割り当てるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。