ES 6入門ノート3-関数の拡張

1107 ワード

1.関数パラメータのデフォルト値ES 6は、関数のパラメータにデフォルト値を設定することを可能にし、すなわち、パラメータ定義の後に直接書く
function log(x, y = 'World') {
  console.log(x, y);
}

2.restパラメータES 6は、関数の余分なパラメータを取得するためにrestパラメータ(形式は...変数名)を導入し、argumentsオブジェクトを使用する必要がなくなります.restパラメータの組み合わせの変数は、余分なパラメータを配列に入れる配列です.
restパラメータの後に他のパラメータは使用できません(つまり最後のパラメータのみです).そうしないとエラーが発生します.
function add(...values) {
  let sum = 0;

  for (var val of values) {
    sum += val;
  }

  return sum;
}

add(2, 5, 3) // 10

3.矢印関数ES 6は、矢印(=>)を使用して関数を定義することを可能にする.
var f = v => v;
//    
var f = function (v) {
  return v;
};

var f = () => 5;
//    
var f = function () { return 5 };

var sum = (num1, num2) => num1 + num2;
//    
var sum = function(num1, num2) {
  return num1 + num2;
};



矢印関数のコードブロック部分が1つ以上の文を持つ場合は、カッコで囲まれ、return文で返されます.カッコはコードブロックとして解釈されるため、矢印関数が直接オブジェクトを返す場合は、オブジェクトの外側にカッコを付ける必要があります.そうしないと、エラーが発生します.
var sum = (num1, num2) => { return num1 + num2; }
//    
let getTempItem = id => ({ id: id, name: "Temp" });