摘要:最近在牛客網(wǎng)刷了一些題,接下來給大家奉上我的一些函數(shù)的簡單實現(xiàn),希望可以對大家有所幫助。也當作給自己做一個簡單的筆記。
最近在牛客網(wǎng)刷了一些題,接下來給大家奉上我的一些函數(shù)的簡單實現(xiàn),希望可以對大家有所幫助。也當作給自己做一個簡單的筆記。
查找元素在數(shù)組中的位置const indexOf = (arr, item) => arr.indexOf(item);數(shù)組求和
const sum = arr => arr.reduce((prev,next) => prev + next, 0)移除數(shù)組內(nèi)的指定項
const remove = (arr, item) => { var newArr = arr.filter(t => t !== item}) return newArr } //第一種實現(xiàn),借用filter方法過濾掉指定項 const remove = (arr, item) => { let newArr = []; arr.forEach( t => { if(t!==item){ newArr.push(t) } }) return newArr; }//正常的數(shù)組遍歷方法,還有很多實現(xiàn)方法這里就不贅述了,大家自行發(fā)散思維統(tǒng)計某一項出現(xiàn)的次數(shù)
const count = (arr, item) => arr.reduce((prev, cur)=> cur === item ? prev + 1 : prev, 0) //這個算是運用了一下reduce用來統(tǒng)計也是棒棒噠找出數(shù)組中重復(fù)的項
const duplicates = arr => { let duplicatesArr = []; arr.forEach(t => { if (arr.indexOf(t) !== arr.lastIndexOf(t) && duplicatesArr.indexOf(t) === -1) { duplicatesArr.push(t); } }) return duplicatesArr; } //思路為如果正向查找和反向查找index不同,這個項就重復(fù)過。找出某項在數(shù)組中出現(xiàn)的所有位置
const findAllOccurrences = (arr, target) => { let ret = []; arr.forEach((t, i) =>{ if (t === target) { ret.push(i) } }) return ret; }數(shù)組的去重
const unique = arr => [... new Set(arr)] //這是我的第一種實現(xiàn)方式 利用es6的Set的特性 來達到去重的目的 const unique = arr => arr.filter((t,i)=>i === arr.indexOf(t)) //這是第二種
歡迎大家發(fā)散思維共同討論,如有錯誤請指正。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/107171.html
摘要:前言最近在學(xué)習(xí)框架的基本原理,看了一些技術(shù)博客以及一些對源碼的簡單實現(xiàn),對數(shù)據(jù)代理數(shù)據(jù)劫持模板解析變異數(shù)組方法雙向綁定有了更深的理解。 前言 最近在學(xué)習(xí)vue框架的基本原理,看了一些技術(shù)博客以及一些對vue源碼的簡單實現(xiàn),對數(shù)據(jù)代理、數(shù)據(jù)劫持、模板解析、變異數(shù)組方法、雙向綁定有了更深的理解。于是乎,嘗試著去實踐自己學(xué)到的知識,用vue的一些基本原理實現(xiàn)一個簡單的todo-list,完成...
摘要:關(guān)鍵字表示代碼在該處將會被阻塞式暫停阻塞的僅僅是函數(shù)代碼本身,而不是整個程序,但是這并沒有引起函數(shù)內(nèi)部自頂向下代碼的絲毫改變。通過實現(xiàn)模式在通過實現(xiàn)理論的過程中已經(jīng)有一些有趣的探索了。 至此本系列的四篇文章翻譯完結(jié),查看完整系列請移步blogs 由于個人能力知識有限,翻譯過程中難免有紕漏和錯誤,望不吝指正issue ES6 Generators: 完整系列 The Basics...
摘要:,微軟發(fā)布,同時發(fā)布了,該語言模仿同年發(fā)布的。,公司在瀏覽器對抗中沒落,將提交給國際標準化組織,希望能夠成為國際標準,以此抵抗微軟。同時將標準的設(shè)想定名為和兩類。,尤雨溪發(fā)布項目。,正式發(fā)布,并且更名為。,發(fā)布,模塊系統(tǒng)得到廣泛的使用。 前言 作為程序員,技術(shù)的落實與鞏固是必要的,因此想到寫個系列,名為 why what or how 每篇文章試圖解釋清楚一個問題。 這次的 why w...
摘要:函數(shù)通常是面向?qū)ο缶幊田L(fēng)格,具有副作用。因為在函數(shù)式編程中,很有可能這些引用指向的并不是同一個對象。記住,函數(shù)并不意味著函數(shù)式編程。函數(shù)可以用函數(shù)式編程風(fēng)格編寫,避免副作用并不修改參數(shù),但這并不保證。 軟件構(gòu)建系列 原文鏈接:Functional Mixins 譯者注:在編程中,mixin 類似于一個固有名詞,可以理解為混合或混入,通常不進行直譯,本文也是同樣。 這是軟件構(gòu)建系列教...
摘要:游標條數(shù)的分頁接口實現(xiàn)命令用于迭代數(shù)據(jù)庫中所有的,但是因為數(shù)據(jù)中的數(shù)量是不能確定的,線上直接執(zhí)行會被打死的,而且的數(shù)量在你操作的過程中也是時刻在變化的,可能有的被刪除,可能期間又有新增的。 分頁接口的實現(xiàn),在偏業(yè)務(wù)的服務(wù)端開發(fā)中應(yīng)該很常見,PC時代的各種表格,移動時代的各種feed流、timeline。 出于對流量的控制,或者用戶的體驗,大批量的數(shù)據(jù)都不會直接返回給客戶端,而是通過...
閱讀 1115·2021-11-23 10:05
閱讀 1794·2021-11-12 10:36
閱讀 1858·2019-08-30 15:56
閱讀 1692·2019-08-29 12:32
閱讀 3049·2019-08-28 18:04
閱讀 3431·2019-08-26 12:17
閱讀 2506·2019-08-26 11:35
閱讀 1246·2019-08-23 15:11