1、什么是高階函數(shù)
什么是高階函數(shù):就是一個(gè)函數(shù)的參數(shù)是函數(shù),或者返回值是函數(shù),滿足其中一個(gè)就是高階函數(shù)?
開閉原則:對(duì)擴(kuò)展是開發(fā)的,對(duì)修改是封閉的
2、回調(diào)函數(shù)
字面上的理解,回調(diào)函數(shù)就是一個(gè)參數(shù),將這個(gè)函數(shù)作為參數(shù)傳到另一個(gè)函數(shù)里面,當(dāng)那個(gè)函數(shù)執(zhí)行完之后,再執(zhí)行傳進(jìn)去的這個(gè)函數(shù)。這個(gè)過程就叫做回調(diào)。


3、數(shù)組的高階用法
(1)forEach()方法,用于循環(huán)遍歷整個(gè)數(shù)組
該方法的參數(shù)是一個(gè)回調(diào)函數(shù),回調(diào)函數(shù)可以傳兩個(gè)參數(shù),第一個(gè)參數(shù)是數(shù)組中的每一項(xiàng)元素,
第二個(gè)參數(shù)是每一項(xiàng)元素對(duì)應(yīng)的下標(biāo)。
注意:第二個(gè)參數(shù)可以省略。

(2)filter()方法,用于過濾數(shù)組中的元素,返回過濾結(jié)果

(3)find()方法,用于獲取數(shù)組中滿足規(guī)則的第一個(gè)元素

(4)findIndex()方法,用于獲取數(shù)組中滿足規(guī)則的第一個(gè)元素下標(biāo)

(5)some()方法,用于表示數(shù)組中是否有滿足指定規(guī)則的元素,有返回true,一個(gè)都沒有返回false

(6)every()方法,用于表示數(shù)組中是否所有元素都滿足指定的規(guī)則

(7)map()方法,用于將原始數(shù)組里面的數(shù)據(jù)根據(jù)指定的規(guī)則返回新的數(shù)組

(8)sort()方法,對(duì)數(shù)組的元素進(jìn)行排序
回調(diào)函數(shù)需要傳兩個(gè)參數(shù),返回參數(shù)1-參數(shù)2是升序,返回參數(shù)2-參數(shù)1是降序


(9)reduce()方法,統(tǒng)計(jì)數(shù)組中元素的值(從左到右)

(10)reduceRight()方法,統(tǒng)計(jì)數(shù)組中元素的值(從右到左)
