ホームページ >ウェブフロントエンド >フロントエンドQ&A >蓄積するJavaScriptカスタム関数
JavaScript は、Web アプリケーションの作成に使用される高級プログラミング言語であり、その強力な機能と幅広い用途により、Web 開発に必須のツールの 1 つとなっています。 JavaScript では、カスタム関数は、独自のニーズに応じて関数を作成したり呼び出したりできるようにする非常に重要なテクノロジです。今回はJavaScriptのカスタム関数を使って蓄積する方法を紹介します。
累積とは何ですか?
累積とは、一連の数値内のすべての数値を加算することです。たとえば、一連の数値 1、2、3、4、5 がある場合、累積結果は 15 (つまり、1 2 3 4 5) になります。
JavaScript カスタム関数を使用して蓄積する方法?
JavaScript カスタム関数を使用して蓄積するには、変数、ループ、条件文を使用する必要があります。
以下は最も単純な累積プログラムです:
function sum(arr) { var s = 0; for (var i = 0; i < arr.length; i++) { s += arr[i]; } return s; } var arr = [1, 2, 3, 4, 5]; console.log(sum(arr)); // 15
このプログラムを段階的に分解してみましょう:
sum 関数を呼び出し、一連の数値を渡すことで、これをテストできます。この例では、数値シーケンス arr = [1, 2, 3, 4, 5] を定義し、console.log 関数を使用してその累積結果を出力します。
上記のプログラムは、蓄積用の JavaScript カスタム関数の最も基本的な形式です。ただし、まだ多くのことが望まれています。
エラー処理
前のプログラムは、入力データが正しく有効であると想定し、直接計算を実行します。ただし、実際のアプリケーションでは、誤った入力データやその他のエラーが発生する可能性があります。
より堅牢なプログラムを作成するには、いくつかのエラー処理メカニズムを追加する必要があります。以下は、改良された蓄積プログラムです:
function sum(arr) { if (!Array.isArray(arr)) { throw new TypeError('sum() expects an array as parameter.'); } var s = 0; for (var i = 0; i < arr.length; i++) { if (typeof arr[i] !== 'number') { throw new TypeError('sum() expects an array of numbers.'); } s += arr[i]; } return s; } var arr = [1, 2, 3, 4, 5]; console.log(sum(arr)); // 15 console.log(sum('12345')); // TypeError: sum() expects an array as parameter. console.log(sum([1, '2', 3, 4])); // TypeError: sum() expects an array of numbers.
このバージョンでは、2 つのエラー処理条件を追加しました:
エラー処理により、プログラムの堅牢性と信頼性が大幅に向上し、予期せぬ状況でも関数が正しく実行できるようになります。
関数シグネチャ
プログラミングでは、関数シグネチャとは、関数の名前、パラメータ、戻り値の型を指します。関数のシグネチャを決定すると、関数をより簡単に理解して使用できるようになります。
関数シグネチャには次のものが含まれている必要があります:
累積関数の場合、次のように関数に署名できます:
sum(arr: Array) => Number
これは、sum 関数が次のように要求することを示します。パラメータとして配列を受け取り、結果として数値を返します。
高階関数
JavaScript では、高階関数とは、関数を入力として受け取るか、関数を出力として返す関数です。高階関数を使用して一般的な操作をカプセル化し、それらをさまざまなデータ型や条件に適用できます。
たとえば、配列内の各要素に演算を適用できる一般的なマップ関数を作成できます。この関数の書き方を見てみましょう:
function map(arr, f) { if (!Array.isArray(arr)) { throw new TypeError('map() expects an array as parameter.'); } if (typeof f !== 'function') { throw new TypeError('map() expects a function as second parameter.'); } var result = []; for (var i = 0; i < arr.length; i++) { result.push(f(arr[i])); } return result; } var arr = [1, 2, 3, 4, 5]; console.log(map(arr, x => 2 * x)); // [2, 4, 6, 8, 10] var words = ['JavaScript', 'is', 'awesome']; console.log(map(words, w => w.toUpperCase())); // ['JAVASCRIPT', 'IS', 'AWESOME']
この関数は、配列 arr と関数 f の 2 つのパラメーターを受け取ります。関数 f は配列内の各要素に適用され、計算結果を返します。
map 関数を使用すると、数値配列の各要素の乗算や文字列配列の各要素の大文字変換など、さまざまな演算を適用できます。マップ関数は一般的な操作であるため、一度定義するだけで、複数のシナリオで使用できます。
概要:
この記事の導入部を通じて、JavaScript カスタム関数を使用して蓄積する方法を学びました。エラーの処理方法、関数シグネチャの定義方法、高階関数の使用方法を学びました。 JavaScript カスタム関数は非常に柔軟で強力なので、独自のニーズに応じて関数を作成および呼び出しできるため、コードの再現性と保守性が向上します。
以上が蓄積するJavaScriptカスタム関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。