這篇文章主要介紹了es6中flat方法怎么使用的相關(guān)知識,內(nèi)容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇es6中flat方法怎么使用文章都會有所收獲,下面我們一起來看看吧。
成都創(chuàng)新互聯(lián)自2013年起,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務公司,擁有項目網(wǎng)站設計、成都做網(wǎng)站網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元望謨做網(wǎng)站,已為上家服務,為望謨各地企業(yè)和個人服務,聯(lián)系電話:028-86922220
在es6中,flat()方法用于按照一個可指定的深度遞歸遍歷數(shù)組,并將所有元素與遍歷到的子數(shù)組的元素合并為一個新的數(shù)組返回,也就是數(shù)組降維,語法為“Array.prototype.flat()”。
本教程操作環(huán)境:windows10系統(tǒng)、ECMAScript 6.0版、Dell G3電腦。
Array.prototype.flat()
flat() 方法會按照一個可指定的深度遞歸遍歷數(shù)組,并將所有元素與遍歷到的子數(shù)組中的元素合并為一個新數(shù)組返回。
也就是我們所說的數(shù)組降維。
作用:將數(shù)組扁平化,對每一項的值進行循環(huán)處理,如果該項的值也是數(shù)組,則取出來(相當于去掉了這項數(shù)組的[]括號)
flat(n)
將每一項的數(shù)組偏平化,n默認是1,表示扁平化深度.
長話短說,就是按照flat里面的參數(shù)對Array做一個去括號的操作,默認去一層。
下面就簡單實現(xiàn)下
``` Array.prototype.myFlat = function (num = 1) { if (num < 1) { return this } const res = [] for (let i = 0; i < this.length; i++) { if (Array.isArray(this[i])) { res.push(...this[i].myFlat(num - 1)) } else { res.push(this[i]) } } return res } ```
思路比較簡單,如果是非數(shù)組,直接push,如果是數(shù)字,需要把它去一層括號進行處理。去N次括號的話,調(diào)用N次myFlat方法即可。
關(guān)于“es6中flat方法怎么使用”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“es6中flat方法怎么使用”知識都有一定的了解,大家如果還想學習更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。