LoginSignup
wifrstfasnriov
@wifrstfasnriov (KA TO)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

【javascript】function内で引数に対してfor文を使うには

解決したいこと

functionで受け取った引数全てに対して処理をしたいです。
例えば

function sum(a,b=0,c=0) {

}

こんな関数で引数でa+b+cを足した数値を返したいとした時、単にa+b+cをしても良いのですが、引数全てに対してfor文を回すと言ったこともできるはずだと思いました。
一度配列に入れる必要があると思うのですが、その時にa,b,cをそれぞれ指定して配列にしていてはa+b+cとやっているのと変わりません。
何か良い方法はないでしょうか。
よろしくお願いします。

自分で試したこと

javascript 関数 引数 for文
とか
javascript function optional parameter for
とかで調べてみましたが、当たり前すぎるのか答えが得られませんでした。 

0

1Answer

jsだと可変長引数という、任意の個数の引数を受け付けられて且つその引数データを配列で受け付けられる機能があるのでそちらを使って対応ができるかもしれません!

...argsみたいな形で引数に指定します!

例 :

function sum(...args) {
    var sum = 0;
    for (var i = 0; i < args.length; i++) {
        sum += args[i];
    }
    return sum;
}

console.log("合計1:", sum(1, 2, 3));
console.log("合計2:", sum(1, 2, 3, 4));

出力結果:

合計1: 6
合計2: 10
1

Comments

  1. @wifrstfasnriov

    Questioner
    ご回答ありがとうございます。
    なるほど…こんな方法があるんですね。
    やりたかったことそのままです。
    貼っていただいたリンク先もとてもわかりやすかったです。
    ありがとうございました!

Your answer might help someone💌