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