函式式程式設計(4)

2021-09-02 15:47:39 字數 547 閱讀 5053

高階函式

1.高階函式:以乙個函式作為引數;以乙個函式作為返回結果。

2.以函式為引數的有_.map,_.reduce和_.filter等一些函式,具體的操作請參照underscore.

(1)對於_.max這個函式是用運算子(>)來比較的,然而他不能實現真正的比較,這時就需要建立乙個新函式了。

例:

function finder(valuefun, bestfun, coll))

}finder(_.identity, math.max, [1,2,3,4,5]);

//>>5;

這就是乙個高階函式的實現。通過valuefun用來生成比較值,bestfun函式實現各種比較,coll傳入值。

(2)使用的是函式,而不是值。

例:

function repeatedly(times, fun)

//用於將乙個函式重複執行多次;

repeatedly(3,function())

//>>[1,3,8](這裡產生的是隨機數,結果不唯一)

times代表執行的次數,fun執行的函式。

4 函式式程式設計正規化筆記

本文為拉勾網大前端高薪訓練營第一期筆記 const blogcontroller 等效const blogcontroller const fn makefn fn function once fn let pay once function money pay 5 pay 5 函式在執行的時候會放...

python 4函式式程式設計

1 高階函式 變數可以指向函式。def add x,y,f 例如f引數為函式 編寫高階函式,就是讓函式的引數能夠接收別的函式。python內建了map 和reduce 高階函式。1.1 將list每項相乘 def f x return x x r map f,1,2,3,4,5,6,7 list r...

函式式程式設計(4) 裝飾器

裝飾器 由於函式也是乙個物件,而且函式物件可以被賦值給變數,所以,通過變數也能呼叫該函式。def now print 2013 12 25 f now f 2013 12 25 函式物件有乙個 name 屬性,可以拿到函式的名字 now.name now f.name now 現在,假設我們要增強n...