數(shù)組扁平化定義:在前端項(xiàng)目開(kāi)發(fā)過(guò)程中,偶爾會(huì)出現(xiàn)層疊數(shù)據(jù)結(jié)構(gòu)的數(shù)組,需要把多層數(shù)組轉(zhuǎn)換為一級(jí)數(shù)組(即提取嵌套數(shù)組元素最終合并為一個(gè)數(shù)組),使其內(nèi)容合并并且展開(kāi)。

成都一家集口碑和實(shí)力的網(wǎng)站建設(shè)服務(wù)商,擁有專業(yè)的企業(yè)建站團(tuán)隊(duì)和靠譜的建站技術(shù),十年企業(yè)及個(gè)人網(wǎng)站建設(shè)經(jīng)驗(yàn) ,為成都1000多家客戶提供網(wǎng)頁(yè)設(shè)計(jì)制作,網(wǎng)站開(kāi)發(fā),企業(yè)網(wǎng)站制作建設(shè)等服務(wù),包括成都營(yíng)銷(xiāo)型網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),同時(shí)也為不同行業(yè)的客戶提供做網(wǎng)站、成都做網(wǎng)站的服務(wù),包括成都電商型網(wǎng)站制作建設(shè),裝修行業(yè)網(wǎng)站制作建設(shè),傳統(tǒng)機(jī)械行業(yè)網(wǎng)站建設(shè),傳統(tǒng)農(nóng)業(yè)行業(yè)網(wǎng)站制作建設(shè)。在成都做網(wǎng)站,選網(wǎng)站制作建設(shè)服務(wù)商就選創(chuàng)新互聯(lián)。
遍歷數(shù)組的方案:
for循環(huán)
for...of
for...in
forEach()
entries()
keys()
values()
reduce()
map()
判斷元素是否是數(shù)組的方案:
instanceof
constructor
object.prototype.toString.call
isArray
將數(shù)組元素進(jìn)行展開(kāi)一層的方案:
擴(kuò)展運(yùn)算法 + concat(concat() 方法用于合并兩個(gè)或多個(gè)數(shù)組,在拼接的過(guò)程中加上擴(kuò)展運(yùn)算符會(huì)展開(kāi)一層數(shù)組)
concat + apply(主要是利用 apply 在綁定作用域時(shí),傳入的第二個(gè)參數(shù)是一個(gè)數(shù)組或者類數(shù)組對(duì)象,其中的數(shù)組元素將作為單獨(dú)的參數(shù)傳給 func 函數(shù)。也就是在調(diào)用 apply 函數(shù)的過(guò)程中,會(huì)將傳入的數(shù)組一個(gè)一個(gè)的傳入到要執(zhí)行的函數(shù)中,也就是相當(dāng)對(duì)數(shù)組進(jìn)行了一層的展開(kāi)。)
toString + split(不推薦使用 toString + split 方法,因?yàn)椴僮髯址呛芪kU(xiǎn)的事情,如果數(shù)組中的元素所有都是數(shù)字的話,toString + split 是可行的,并且是一步搞定。)
最終手寫(xiě)的flat()方法為:
參考博客如下,注明一下出處,感謝大神們,希望自己可以多多練習(xí),多多回顧:
三元博客
JS數(shù)組reduce()方法詳解及高級(jí)技巧
數(shù)組flat方法實(shí)現(xiàn)
document.getElementsById("文本框id").onblur=方法名如:=doit;//方法名不要加();把這個(gè)寫(xiě)到onload事件中,
function doit()
{
}
原生js就是使用javascript來(lái)進(jìn)行一系列的開(kāi)發(fā),
非原生就是使用了js框架,像jq等就不是原生的,它是js的封裝。
當(dāng)前名稱:手寫(xiě)javascript,手寫(xiě)識(shí)別字
文章起源:http://chinadenli.net/article13/dseheds.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、品牌網(wǎng)站建設(shè)、網(wǎng)站維護(hù)、微信公眾號(hào)、網(wǎng)站內(nèi)鏈、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)