目次

JavaScript 関数の戻り値

y2sunlight 2021-04-05

return文


複数の値を戻す

*2015

配列を戻し、配列の分割代入を利用して実装する。

function mySum(...values) {
    let sum = 0;
    for(v of values) sum += v;
    return sum;
}
function sumAndAve(...values) {
    let sum = mySum(...values);
    return [sum, sum/values.length]
}

let [sum, ave] = sumAndAve(1,2,3,4);
console.log(`${sum} ${ave}`);  // 出力:10 2.5

関数を戻す

第1級関数のうち、関数を引数及び戻り値として扱うことのできる関数を高階関数と呼ぶ。以下は関数を戻り値として扱う例です。

function polynomial(...args) {
    return function(x) {
        let y = 0;
        for(let i = 0, len = args.length; i<len; i++){
            let xi = 1;
            for(let j=0; j<i; j++) xi *= x;
            y += args[i] * xi;
         }
         return y;
    };
}
var quadraticFunc = polynomial(1,2,3);
console.log(quadraticFunc(1));  // 出力:6
console.log(quadraticFunc(2));  // 出力:17