Javascript高次関数とは?


ソース
https://7942yongdae.tistory.com/158

高次関数の定義(HOF:Higher Order Function)


高次関数は、パラメータまたは戻り関数として関数を使用する関数です.
関数はパラメータとして関数を受け入れやすいか,結果値を関数として返す関数を高次関数と呼ぶ.

パラメータとして関数を使用する例

const funEx = (fn) => {
	setTimeout(() => {
    	console.log(fn())
	}, 1000);
}

funEx(() => 1 + 2); // 1초뒤 3출력 

戻り関数

const division = (divisionValue) => {
	return (value) => {
    	return value / divisionValue;
	};
};
const divisionBy5 = division(5); 
console.log(divisionBy5); // (value) => { return value / divisionValue;}
console.log(divisionBy5(5)); //1
console.log(division(5)(5)); //1