最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript中搜索數(shù)組的四種方法示例詳解

 更新時間:2022年12月13日 11:09:17   作者:CRMEB  
我們在學(xué)到j(luò)s中數(shù)組的時候,我們會接觸到j(luò)s中數(shù)組的一些方法這些方法對我們來說,可以很便利的達(dá)到我們想要的結(jié)果,下面這篇文章主要給大家介紹了關(guān)于javascript中搜索數(shù)組的四種方法,需要的朋友可以參考下

前言

前端經(jīng)常要通過 javaScript 來處理數(shù)組中的數(shù)據(jù),其中就包括檢查數(shù)組中是否包含滿足特定搜索條件的單個或者多個值,這就需要我們關(guān)于用于確認(rèn)的布爾值、數(shù)組中值得位置索引或包含所有搜索結(jié)果的單獨數(shù)組等。

在 ECMAScript6 之前,最常用的方法就是通過 for 循環(huán)來遍歷數(shù)組中的所有項目并對項目執(zhí)行操作?,F(xiàn)在我們可以通過內(nèi)置的使用方法來完成在數(shù)組中搜索值的常見任務(wù)。

本文將介紹 Array.includes()、Array.indexOf()、Array.fiind() 和 Array.filter 這些方法。

使用 includes()

根據(jù)數(shù)組中是否存在值,includes() 方法將返回 true 或 false

基本語法:

第一個參數(shù) valueToFind 是數(shù)組中要匹配的值,第二個參數(shù) fromIndex 是可選的,用于設(shè)置開始比較的索引,因為默認(rèn)值為 0,意味著默認(rèn)搜索整個數(shù)組。

請看 alligator facts 的示例數(shù)組:

然后使用 includes() 檢查數(shù)組中是否存在字符串”thick scales”

代碼返回 true,因為字符串存在于數(shù)組中。

如果你添加 fromIndex 參數(shù)以便于在”thick scales” 之后進(jìn)行比較,則將返回 false

此外,還有一些需要注意的重要事項,這里的.includes() 方法使用嚴(yán)格比較,例如:

上述代碼返回 true,因為數(shù)值 80 在數(shù)組中。

上述代碼將返回 false,因為字符串值’80’ 不在數(shù)組中。

includes() 對于只需要知道值是否存在于數(shù)組腫的用例很有幫助

使用 indexOf()

indexOf() 方法返回數(shù)組中值的第一個索引,如果沒有匹配項,則返回 -1。

基本語法如下:

回顧 alligator facts 的示例數(shù)組:

使用 indexOf() 返回字符串 “rounded snout” 的第一個索引:

返回字符串 “rounded snout” 的索引 —3

上述代碼返回 -1,因為該字符串不在數(shù)組中。

以上代碼返回 1

返回 4,因為在索引 2 之后找到該元素,為數(shù)組中第四個元素

注意:如果你查找的不是第一個結(jié)果,那么或許可以使用 lastIndexOf(),lastIndexOf() 方法與 indexOf() 類似,但將從數(shù)組的最后一個索引開始查找第一個匹配項并往回工作。

indexOf 對于需要搜索結(jié)果的耽擱索引的用力很有幫助。

使用 find()

find() 方法返回數(shù)組中與函數(shù)條件匹配的第一個值,如果沒有匹配項,則返回 undefined

基本語法如下:

回顧 alligator facts 的示例數(shù)組:

然后使用 find() 返回長度小于 13 個字符的第一個值:

此示例僅使用 callback 參數(shù)。

80 是一個數(shù)值。“rounded snout” 的長度為 13 個字符,“thick scales” 有 12 個字符,而 “4 foot tail” 有 11 個字符 —— 這兩者都滿足函數(shù)條件,但是,find() 只會返回第一個值,即返回 “thick scales”。

以下為使用可選的 index 參數(shù)的示例:

“thick scales”、“4 foot tail” 和 “rounded snout” 都滿足第一個條件(typeof el === ‘string’)。如果這是唯一的條件,則返回第一個,即 “thick scales”。但因為有第二個條件(idx === 2),所以最后代碼返回 “4 foot tail”。

注意:如果你查找的是索引而不是值,那么可能會傾向于使用 findIndex()。findIndex() 方法也接收函數(shù),但它返回匹配元素的索引而不是元素本身。

find() 對于需要單個搜索結(jié)果值的用例很有幫助。

使用 filter()

filter() 方法返回新數(shù)組,新數(shù)組包含所有與函數(shù)條件匹配的值。如果沒有匹配項,則返回空數(shù)組。

基本語法如下:

還是 alligator facts 的示例數(shù)組:

然后使用 filter() 返回所有等于 80 的值:

數(shù)組中的兩個值 80 都滿足條件。因此返回新數(shù)組:[80, 80]。

filter() 對于需要多個搜索結(jié)果值的用例很有幫助。

總結(jié)

數(shù)組中的兩個

本文重點介紹了 Array.includes()、Array.indexOf()、Array.find() 和 Array.filter。每個都可以為用例需求提供解決方案。

只需要知道值是否存在?這時可以使用 includes()。

需要獲取元素本身?可以對單個項目使用 find () 或?qū)Χ鄠€項目使用 filter()。

需要查找元素的索引?應(yīng)該使用 indexOf() 搜索原語或使用 findIndex() 搜索函數(shù)。

到此這篇關(guān)于javascript中搜索數(shù)組的四種方法的文章就介紹到這了,更多相關(guān)js搜索數(shù)組方法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 妙用Bootstrap的 popover插件實現(xiàn)校驗表單提示功能

    妙用Bootstrap的 popover插件實現(xiàn)校驗表單提示功能

    最近使用bootstrap開發(fā)項目比較多,在表單校驗功能中用popover插件實現(xiàn)出錯提示功能很方面,下面小編給大家?guī)砹艘黄P(guān)于Bootstrap的 popover插件實現(xiàn)校驗表單提示功能的實現(xiàn)代碼,非常不錯,感興趣的朋友一起看看吧
    2016-08-08
  • JavaScript中EventLoop介紹

    JavaScript中EventLoop介紹

    本篇文章給大家詳細(xì)介紹了JavaScript中EventLoop的相關(guān)知識,有這方面需要的朋友參考學(xué)習(xí)下。
    2018-01-01
  • 詳解JS幾種變量交換方式以及性能分析對比

    詳解JS幾種變量交換方式以及性能分析對比

    本篇文章主要介紹了JS幾種變量交換方式以及性能分析對比,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2016-11-11
  • 25個好玩的JavaScript小游戲分享

    25個好玩的JavaScript小游戲分享

    JavaScript 早已不只是一門寫寫網(wǎng)頁特效的腳本語言了,如今廣泛用于網(wǎng)站的前端交互。
    2011-04-04
  • 分享12個非常實用的JavaScript小技巧

    分享12個非常實用的JavaScript小技巧

    這篇文章主要介紹了分享12個非常實用的JavaScript小技巧,這些小技巧可能在你的實際工作中或許能幫助你解決一些問題,需要的朋友可以參考下
    2016-05-05
  • JavaScript高級之閉包詳解

    JavaScript高級之閉包詳解

    這篇文章主要為大家介紹了JavaScript閉包,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • 如何通過遞歸方法實現(xiàn)用json-diff渲染json字符串對比結(jié)果

    如何通過遞歸方法實現(xiàn)用json-diff渲染json字符串對比結(jié)果

    JsonDiff是一個高性能json差異發(fā)現(xiàn)工具,它幾乎可以發(fā)現(xiàn)任何JSON結(jié)構(gòu)的差異,并且將錯誤信息反饋給用戶,下面這篇文章主要給大家介紹了關(guān)于如何通過遞歸方法實現(xiàn)用json-diff渲染json字符串對比結(jié)果的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • js字符串操作函數(shù)總結(jié)及使用方法示例

    js字符串操作函數(shù)總結(jié)及使用方法示例

    這篇文章主要介紹了js字符串操作函數(shù)toString、split、length、indexOf、lastIndexOf、replace、replaceAll、charAt、charCodeAt、contact、slice、substring、substr、match、exec、search、trim、includes
    2023-08-08
  • 讓innerHTML的腳本也可以運(yùn)行起來

    讓innerHTML的腳本也可以運(yùn)行起來

    讓innerHTML的腳本也可以運(yùn)行起來...
    2006-07-07
  • Javascript迭代、遞推、窮舉、遞歸常用算法實例講解

    Javascript迭代、遞推、窮舉、遞歸常用算法實例講解

    今天小編就為大家分享一篇關(guān)于Javascript迭代、遞推、窮舉、遞歸常用算法實例講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02

最新評論

牟定县| 吴旗县| 芦溪县| 兴业县| 东丽区| 洛扎县| 亚东县| 桑植县| 永福县| 和硕县| 琼中| 诸暨市| 钟山县| 新安县| 云梦县| 西平县| 广河县| 从江县| 镇康县| 平南县| 新竹县| 三台县| 陆河县| 彰武县| 体育| 祁阳县| 莫力| 钟祥市| 三亚市| 讷河市| 昭通市| 泗洪县| 渭南市| 漳平市| 鄯善县| 偃师市| 清远市| 广安市| 和政县| 曲松县| 渝中区|