摘要:起因在掘金上看到道前端面試題,其中有一道題是這樣的有數組,將它變為,即扁平化數組并排序解答答案點贊排名第一的大佬的解答如下解析首先,不做贅述,參見語法數組轉換其次,,數據結構,因為其內值唯一的特性,可以完成數組去重再者,是,內描述很詳細,
起因
在掘金上看到100道前端面試題,其中有一道題是這樣的解答
有數組[11, 1, 3, 5 [4, 5], 2, [2, [44, 22, 1, [22, 13, 6]]]],將它變為[1,2,3...],即扁平化數組并排序
答案點贊排名第一的大佬的解答如下:
Array.from(new Set(arr.flat(Infinity))).sort((a, b) => {return a - b;});解析
首先,Array.from不做贅述,參見ES6語法數組轉換總結
其次,new Set(),set數據結構,因為其內值唯一的特性,可以完成數組去重
再者,是Array.prototype.flat,mdn內描述很詳細,只是我沒有用過QAQ,其中還有用reduce結合concat實現flat的例子,這里也不多說了
最后,還有一個坑,是排序,這個我就忘了,因為默認的sort是先將數組轉換字符串再比較的,這樣的數組排序則是按照code碼排序了,例如[101, 1, 2].sort() = [1, 101, 2]
深入了解api的運作機制,靈活運用,不能總想自己造輪子和寫算法,能“懶”則“懶”~
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/105519.html
摘要:每次被執行時,和被傳入,這個根據進行累加或者是自身消減,英文原意,進而返回最新的。 之前的一篇文章:從一道面試題,到我可能看了假源碼討論了bind方法的各種進階Pollyfill,今天再分享一個有意思的題目。 從解這道題目出發,我會談到數組的Reduce方法,ES6特性和Redux數據流框架中Reducer的命名等等。一道典型的題目,卻如唐代詩人章碣《對月》詩中所云:別有洞天三十六,水...
摘要:未點擊的按鈕頂部的亮度略高于底部。我認為扁平化是未來的一種趨勢。這種限制是有好處的,這有助于簡化思想。同樣可以采取更深的一步。頂部的導航條有更多的空間。文字搜索音樂占了整個導航條高度的。 showImg(https://segmentfault.com/img/bVbn06c?w=1000&h=451); 想閱讀更多優質文章請猛戳GitHub博客,一年百來篇優質文章等著你! 簡介 首先...
摘要:將這個問題進行轉化將維數組降到維思路構造一個目標數組,初始為空。如果當前項是數組,對當前數組元素進行降維。這是一個典型的遞歸過程。 將這個問題進行轉化 ===> 將N維數組降到(N-1)維 思路:構造一個目標數組,初始為空。遍歷N維數組中的每一項。如果當前項不是數組而是單個元素,那么將它保存到目標數組中。如果當前項是數組,對當前數組元素進行降維。這是一個典型的遞歸過程。 functio...
閱讀 882·2021-11-15 11:38
閱讀 2512·2021-09-08 09:45
閱讀 2812·2021-09-04 16:48
閱讀 2563·2019-08-30 15:54
閱讀 929·2019-08-30 13:57
閱讀 1617·2019-08-29 15:39
閱讀 495·2019-08-29 12:46
閱讀 3519·2019-08-26 13:39