1. 程式人生 > 其它 >Java發展的重大事故

Java發展的重大事故

高階函式

高階函式的特點:

1、定義的高階函式本身的實現 ;

2、定義了參量函式的介面:輸入、輸出;

3、定義了高階函式的功能部分對輸入函式的引用或使用方式。

語義:定義高階函式並宣告混入函式的介面

本質是暴露低階函式的介面給高階函式使用;

map():map()作為高階函式,事實上它把運算規則抽象了,因此,我們不但可以計算簡單的f(x)=x2,還可以計算任意複雜的函式。

reduce():Array的reduce()把一個函式作用在這個Array的[x1, x2, x3...]上,這個函式必須接收兩個引數,reduce()把結果繼續和序列的下一個元素做累積計算,

回撥地獄

回撥地獄的原因是,當人們試圖以一種從上到下的視覺方式執行JavaScript的方式編寫JavaScript時。很多人犯這個錯誤!在C,Ruby或Python等其他語言中,期望第1行發生的任何事情都會在第2行的程式碼開始執行之前完成,依此類推。正如你將會學到的,JavaScript是不同的

什麼是回撥函式?

回撥只是使用JavaScript函式的慣例的名稱。 JavaScript語言中沒有特別的東西叫做“回撥”,它只是一個約定。不像大多數函式那樣立即返回一些結果,使用回撥函式需要一些時間來產生結果。 “非同步”這個詞,又名“非同步”,意思是“需要一些時間”或“將來會發生,而不是現在”。通常回調僅在進行I / O時使用,例如下載東西,閱讀檔案,與資料庫互動等