AngularJS フィルターでのネストされた関数の呼び出し
AngularJS では、開発者はフィルターを使用してデータを変換および操作できます。ただし、フィルターを使用する場合は特殊な点があります。フィルターを 2 セットのかっこで呼び出す必要があります。
関数チェーンを理解する
AngularJS でフィルターを呼び出すときは、本質的には、別の関数を返す関数を呼び出しています。最初の括弧のセットは外側の関数 ($filter) を呼び出し、内側の関数を返します。 2 番目のかっこのセットは、内部関数をすぐに呼び出します。
たとえば、次のコードを考えてみましょう。
$filter('number')(number[, fractionSize])
ここで、$filter は数値フィルターを返す外部関数です。数値および分数サイズ引数は数値フィルターに渡されます。内側の関数は、外側の関数の結果を引数としてすぐに呼び出されます。
JavaScript の同等物
JavaScript では、この関数チェーンに相当するものはネストされた関数を使用します。関数:
function add(x){ return function(y){ return x + y; }; } var addTwo = add(2); console.log(addTwo(4) === 6); // true console.log(add(3)(4) === 7); // true
この例では、外部関数 add は、引数 y を取り、それを外部関数の値 x に加算する新しい関数を返します。内部関数は変数に割り当てることも (例: addTwo)、引数を指定してすぐに呼び出すこともできます (例: add(3)(4))。
以上がAngularJS フィルターに 2 セットのかっこが必要なのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。