[Edge]。→
従来の 関数式の簡潔な代替構文ですが、制限があり、すべての場面で使用することができるわけではできません。
相違点と制限事項:
paramn | 省略可。引数。1つの場合は「( )」は不要。
引数が複数の場合はカンマで区切る必要があります。 全ての param を省略した場合は、空の引数ということになります。 |
---|---|
式 | 値を返す式。 |
処理 | 処理文。 |
¶省く。
コールバックなどで、関数式でやった場合の表現:
function (a){ return a + 100; }
アロー関数式に:
a => a + 100;
または、
a => {return a + 100}
コールバックなどでの表現:
var A=10, B20; (A, B) => A + B; //=30 ([A, B] = [10, 20]) => A + B; //=30。→演算子 (({A, B} = {A:10, B:20}) => A + B); //=30
関数的に取り扱うアロー関数式:
Job=(P1) => P1+100; D=Job(2); //=102
関数でやった場合:
function Job(P1){return P1+100} D=Job(2); //=102
配列をフィルターに掛けて要素を抽出する:
D=[10, 20, 30].filter( (ele, ind) => { //第1引数=要素、第2引数=インデックス、(第3引数=Array)。 alert(ind +':'+ ele); //表示:処理するインデックス、その要素。 if(ele > 15)return true; else return false //要素の値が15より大きければtrueで抽出、それ以外はfalseで却下。 });
表示は、
0:10 1:20 2:30
Dの内容は、配列となる。
=[object]:20,30 0=[number]:20 1=[number]:30