高階函數

所謂告誡函數(higher-order function) 就是操做函數的函數,它接收一個或多個函數做爲參數,並返回一個新函數,奉上一個 demo數組

// 利用數組的 map()方法
let map = function(a,f){return a.map(f);}

// 改函數接收一個函數 f 返回一個新函數。新函數裏面動態寫入了 f,新函數的參數是 a
function mapper(f) {
	return function(a) {return map(a,f);}
}
let increment = function(x) {return x + 1;}
let incrementer = mapper(increment);
// 此時 incrementer已是一個新的函數,increment 已經被寫入進去
incrementer([1,2,3])//[2,3,4]
複製代碼
相關文章
相關標籤/搜索