JavaScript スプレッド構文(Spread syntax)

  • このエントリーをはてなブックマークに追加

スプレッド構文を使ってみる。
配列の要素を展開できる。
例を次に示す。




let add = function(a, b) {
  return a + b;
};

let sum = add(3, 4);

console.log("sum = " + sum);

let array = [10, 20];

//applyメソッドを使って引数を格納した配列を使って
//関数を呼び出すことができる
console.log("add.apply(null,array) = " + add.apply(null, array));

//スプレッド構文を使ってarrayを展開する
console.log("add(...array) = " + add(...array));

let add2 = function() {
    let i, sum = 0;

    for (i = 0; i < arguments.length; i += 1) {
        sum += arguments[i];
    }

    return sum;

};

let array2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

//argumentsという配列は呼び出されて関数内で利用できる追加のパラメータである
console.log("add2(1,2,3,4,5,6,7,8,9,10) = " + add2(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));

//スプレッド構文を使ってarray2を展開する
console.log("add2(...array2) = " + add2(...array2));

//Math.max() 関数は、入力引数として与えられた 0 個以上の数値のうち最大の数を返します。
console.log("Math.max(1, 2, 3, 4, 5) = " + Math.max(1, 2, 3, 4, 5));

//スプレッド構文を使ってarray2を展開する
console.log("Math.max(...array2) = " + Math.max(...array2));

/*

sum = 7
add.apply(null,array) = 30
add(...array) = 30
add2(1,2,3,4,5,6,7,8,9,10) = 55
add2(...array2) = 55
Math.max(1, 2, 3, 4, 5) = 5
Math.max(...array2) = 10

*/

  • このエントリーをはてなブックマークに追加

SNSでもご購読できます。

コメントを残す

*