成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

每日 30 秒 ? 數(shù)組所有數(shù)據(jù)是否滿足某條件

FullStackDeveloper / 1513人閱讀

簡(jiǎn)介
數(shù)組、every、any

判斷一個(gè)數(shù)組中是否都滿足特定的條件,如果滿足則返回 true 否則返回 false

// 該源碼來自于 https://30secondsofcode.org
const all = (arr, fn = Boolean) => arr.every(fn)
代碼分析

Array.prototype.every(callback[, thisArg]) 這個(gè)函數(shù)在 ES2015 中正式被實(shí)現(xiàn)需要注意環(huán)境是否支持。

callback 被調(diào)用時(shí)傳入三個(gè)參數(shù):元素值,元素的索引,原數(shù)組。

every 方法為數(shù)組中的每個(gè)元素執(zhí)行一次 callback 函數(shù),直到它找到一個(gè)使 callback 返回 false(表示可轉(zhuǎn)換為布爾值 false 的值)的元素。

有的同學(xué)會(huì)說了,這個(gè) all 函數(shù) 和 直接使用 Array.prototype.every 有什么區(qū)別呢?答案就在fn = Boolean 這個(gè)點(diǎn)睛之筆,總所周知 javascript 中的對(duì)象其實(shí)是一種特殊的函數(shù),利用 Boolean 這個(gè)對(duì)象可以非常方便對(duì)數(shù)據(jù)進(jìn)行格式化為 boolean 并返回值。every 函數(shù)不能在沒有 callback 時(shí)進(jìn)行調(diào)用,這個(gè)函數(shù)更多的是拓展了 every

使用場(chǎng)景

一個(gè)簡(jiǎn)單的微商場(chǎng)景,獲得當(dāng)前用戶的所有下級(jí)并判斷是否所有人都超過 平臺(tái)規(guī)定的最低銷售額,如果滿足則可以獲得特定的獎(jiǎng)金獎(jiǎng)勵(lì)。

const MIN_SALES = 100000 // 100000 分錢

// 抽取
const disciples = [
    { name: "xiaoer", sales: 100000 },
    { name: "xiaosi", sales: 50000 },
    { name: "menty", sales: 150000 },
]

const canAward = all(disciples, (item, index, origin) => {
    return item.sales > MIN_SALES
})
相似代碼

判斷一個(gè)數(shù)組中是否有一個(gè)滿足的數(shù)據(jù),如果滿足則返回 true 否則返回 false

// 該源碼來自于 https://30secondsofcode.org
const any = (arr, fn = Boolean) => arr.some(fn)

判斷一個(gè)數(shù)組中所有數(shù)據(jù)是否相等。

// 該源碼來自于 https://30secondsofcode.org
const allEqual = arr => arr.every(val => val === arr[0])
一起成長(zhǎng)
在困惑的城市里總少不了并肩同行的 伙伴 讓我們一起成長(zhǎng)。

如果您想讓更多人看到文章可以點(diǎn)個(gè) 點(diǎn)贊

如果您想激勵(lì)小二可以到 Github 給個(gè) 小星星。

如果您想與小二更多交流添加微信 m353839115。

本文原稿來自 PushMeTop

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/102372.html

相關(guān)文章

  • 每日 30 ? 根據(jù)條件數(shù)組分成兩個(gè)集合

    簡(jiǎn)介 數(shù)組、拆分 根據(jù)條件將數(shù)組分成兩個(gè)集合。 // 該源碼來自于 https://30secondsofcode.org const bifurcateBy = (arr, fn) => arr.reduce((acc, val, i) => (acc[fn(val, i) ? 0 : 1].push(val), acc), [[], []]) 代碼分析 這個(gè)代碼主要是利用了 Array.p...

    Dongjie_Liu 評(píng)論0 收藏0
  • 每日 30 ? 誰敢與我一戰(zhàn)

    showImg(https://segmentfault.com/img/remote/1460000018771037?w=900&h=500); 簡(jiǎn)介 benchmark、基準(zhǔn)測(cè)試、jsPerf 在 優(yōu)雅插入數(shù)組 一文中大家最多的評(píng)論就是 能不能加個(gè)基準(zhǔn)測(cè)試。小二不是不喜歡加基準(zhǔn)測(cè)試而是現(xiàn)在硬件設(shè)備的性能越來越快了,有時(shí)候一些操作不是性能問題的主要原因,當(dāng)然這不是我們不寫出好代碼的理由。 書寫...

    Dionysus_go 評(píng)論0 收藏0
  • 每日 30 ? 對(duì)海量數(shù)據(jù)進(jìn)行切割

    showImg(https://raw.githubusercontent.com/pushmetop/resource/master/30-seconds-for-everyday/chunk/poster.png); 簡(jiǎn)介 數(shù)據(jù)分割、分頁(yè)、異步操作、DOM優(yōu)化 把數(shù)組按指定大小進(jìn)行分組,可以用于分頁(yè)、數(shù)據(jù)切割、異步操作數(shù)據(jù)。 // 該源碼來自于 https://30secondsofcode....

    ShevaKuilin 評(píng)論0 收藏0
  • MongoDB基礎(chǔ)操作

    摘要:如果我們需要只去查詢存在字段并且字段的值為的記錄,需要配合操作。的對(duì)象和一些更新的操作符如等,也可以理解為查詢內(nèi)后面的可選,這個(gè)參數(shù)的意思是,如果不存在的記錄,是否插入為插入,默認(rèn)是,不插入??蛇x,拋出異常的級(jí)別。 更多內(nèi)容歡迎來到博客 :https://imjianjian.github.io MongoDB版本:3.4 查詢文檔 find() 查詢所有 db.collection...

    Nekron 評(píng)論0 收藏0
  • 每日 30 ? 終極等于

    簡(jiǎn)介 字符串、數(shù)字、數(shù)組、對(duì)象、時(shí)間、類型、等于 科學(xué)家發(fā)現(xiàn),人腦中會(huì)分泌多種能讓人感到快樂、安全和成就感的物質(zhì),這些物質(zhì)統(tǒng)稱為快樂素。通常情況下,快樂素的釋放水平很低,維持我們心情平靜。只有當(dāng)我們完成了預(yù)設(shè)目標(biāo),作為獎(jiǎng)勵(lì),大腦才會(huì)增加快樂素的分泌,讓人感受到滿足和成功的喜悅。 這是之前看到的一篇關(guān)于 大腦獎(jiǎng)勵(lì)機(jī)制 文章的一段話,為了要獲得獎(jiǎng)勵(lì)我們需要有預(yù)設(shè)目標(biāo),而是每日 30 秒系列也是為了幫助...

    lakeside 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

FullStackDeveloper

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<