您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“JavaScript高階函數(shù)怎么用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“JavaScript高階函數(shù)怎么用”吧!
數(shù)組方法
高階函數(shù)
高階函數(shù)是對(duì)其他函數(shù)進(jìn)行操作的函數(shù),可以將它們作為參數(shù)或通過返回它們.
高階函數(shù)是一個(gè)函數(shù),它接收函數(shù)作為參數(shù)或者將函數(shù)作為輸出返回
forEach 方法 循環(huán)
用法: 遍歷數(shù)組,可以對(duì)每個(gè)值做一些操作
參數(shù)用法:
參數(shù)1:必需;當(dāng)前的元素(類似于,for 循環(huán)中的 i)
參數(shù)2:可選;當(dāng)前遍歷元素的索引值
參數(shù)3:可選;當(dāng)前元素所屬的數(shù)組對(duì)象
var arr = ['a','b','c','d']
//普通寫法
arr.forEach(function(ele,i,array){
console.log(ele); //當(dāng)前的元素
console.log(i); //當(dāng)前的元素的索引值
console.log(array); //當(dāng)前的元素的數(shù)組對(duì)象
})
//箭頭函數(shù)
arr.forEach((ele,i,array)=>{
console.log(ele); //當(dāng)前的元素
console.log(i); //當(dāng)前的元素的索引值
console.log(array); //當(dāng)前的元素的數(shù)組對(duì)象
})
map 方法 執(zhí)行操作
用法:對(duì)數(shù)組中的每一個(gè)元素運(yùn)行指定函數(shù),返回每次調(diào)用函數(shù)的結(jié)果,將其組成一個(gè)新數(shù)組
特點(diǎn):不改變?cè)獢?shù)組,返回一個(gè)新數(shù)組
注意:
map 不會(huì)對(duì)空數(shù)組進(jìn)行檢測(cè)
map 不會(huì)改變?cè)瓟?shù)組
參數(shù)用法:
參數(shù)1:必需;當(dāng)前的元素(類似于,for 循環(huán)中的 i)
參數(shù)2:可選;當(dāng)前遍歷元素的索引值
參數(shù)3:可選;當(dāng)前元素所屬的數(shù)組對(duì)象
var arr = ['1','2','3','4']
var fresh = arr.forEach((ele,i,array)=>{
return ele*2 //對(duì)每個(gè)元素乘2
})
filter 方法 過濾
用法:對(duì)數(shù)組中的元素進(jìn)行過濾篩選,將滿足條件的元素組成新數(shù)組返回
特點(diǎn):將滿足條件的元素返回新數(shù)組
參數(shù)用法:
參數(shù)1:必需;當(dāng)前的元素(類似于,for 循環(huán)中的 i)
參數(shù)2:可選;當(dāng)前遍歷元素的索引值
參數(shù)3:可選;當(dāng)前元素所屬的數(shù)組對(duì)象
//寫法一
var arr = ['張三','李四','王五','張三豐','王小六'];
var fresh = arr.filter((ele,i,array)=>{
return /^王/.test(ele) //篩選出所有姓王的名字
})
//寫法二
var ages = [32,33,55,16,8,40];
function fn(age){
return age >= 18
}
var greater = ages.filter(fn)
some 方法 判斷返回布爾值
用法: 查找數(shù)組中是否有滿足指定條件的元素,然后返回布爾值
參數(shù)用法:
參數(shù)1:必需;當(dāng)前的元素(類似于,for 循環(huán)中的 i)
參數(shù)2:可選;當(dāng)前遍歷元素的索引值
參數(shù)3:可選;當(dāng)前元素所屬的數(shù)組對(duì)象
//數(shù)據(jù)復(fù)雜時(shí),使用比較好
var isHas = arr.some((ele)=>{
return ele.屬性 > 10
})
from 方法 數(shù)組轉(zhuǎn)換
用法:把類數(shù)組轉(zhuǎn)換為真正的淺拷貝數(shù)組,返回轉(zhuǎn)換后的新數(shù)組
參數(shù):
參數(shù)1: 要轉(zhuǎn)換的數(shù)據(jù)(類數(shù)組)
參數(shù)2:回調(diào)函數(shù),用來對(duì)每個(gè)元素進(jìn)行操作,將處理好的值放入新的數(shù)組中
var arr = Array.from('123456',(ele)=>{
return ele*2
})
console.log(arr)
find 方法 查找元素,
用法:查找滿足添加的第一個(gè)元素,返回該元素
注意:找到第一個(gè)滿足的條件時(shí),就不會(huì)在繼續(xù)查找其他元素
參數(shù)用法:
參數(shù)1:必需;當(dāng)前的元素(類似于,for 循環(huán)中的 i)
參數(shù)2:可選;當(dāng)前遍歷元素的索引值
參數(shù)3:可選;當(dāng)前元素所屬的數(shù)組對(duì)象
var arr = [55,10,3,6,88,22]
var item = arr.find((ele,i,array)=>{
return ele > 11
})
findIndex 方法 查找返回索引
用法:查找滿足條件的第一個(gè)索引,返回該元素的索引
注意:找到第一個(gè)滿足的條件時(shí),就不會(huì)在繼續(xù)查找其他元素
參數(shù)用法:
參數(shù)1:必需;當(dāng)前的元素(類似于,for 循環(huán)中的 i)
參數(shù)2:可選;當(dāng)前遍歷元素的索引值
參數(shù)3:可選;當(dāng)前元素所屬的數(shù)組對(duì)象
var arr = [55,10,3,6,88,22]
var item = arr.findIndex((ele,i,array)=>{
return ele > 11
})
includes 方法 查找元素
用法:判斷數(shù)組中是否包含某個(gè)指定元素,找到返回true,否則返回false
var arr = ['a','b','c'];
var isHas = arr.includes('c')
字符串中也有該方法
到此,相信大家對(duì)“JavaScript高階函數(shù)怎么用”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。