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

資訊專欄INFORMATION COLUMN

Javascript判斷數(shù)組是否包含特定元素方法匯總

impig33 / 1787人閱讀

摘要:具體內(nèi)容請參考。感謝大家閱讀,另外,在這邊幫朋友推一個愛心眾籌,希望大家能夠奉獻點愛心,朋友母親,身患直腸癌,目前在北京武警總醫(yī)院接收治療,可留言留下您的聯(lián)系方式,日后感激大家

判斷數(shù)組是否包含某一特定元素是很常見的需求,javascript中有很多實現(xiàn)方法,今天有空匯總了一下,按兼容性由強到弱排序,返回類型一律為boolean:

假設(shè)數(shù)組為arr,目標元素為target

循環(huán)遍歷:
(arr, target) => {
  for (var i = 0; i < arr.length; i++) {
    if (arr[i] === target) {
      return true;
    }
  }
  return false;
}

兼容性:es1

相等算法:===

indexOf:
(arr, target) => {
  return arr.indexOf(target) >= 0;
}

兼容性:es5

相等算法:===

filter:
(arr, target) => {
  return arr.filter(el => el === target).length > 0;
}

兼容性:es5

相等算法:===

some:
(arr, target) => {
  return arr.some(el => el === target);
}

兼容性:es5

相等算法:===

find:
(arr, target) => {
  return arr.find(el => el === target) !== undefined;
}

兼容性:es2015

相等算法:===

findIndex:
(arr, target) => {
  return arr.findIndex(el => el === target) >= 0;
}

兼容性:es2015

相等算法:===

includes:
(arr, target) => {
  return arr.includes(target);
}

兼容性:es2016

相等算法:SameValueZero

==Tips:==

=== 與 SameValueZero的區(qū)別在于
NaN === Nan => false 而 SameValueZero認為兩個NaN之間是相等的。具體內(nèi)容請參考 MDN。如果想把上面===的實現(xiàn)變成SameValueZero的實現(xiàn)可以寫成:

el === target || (Object.is(el, NaN) && Object.is(target, NaN))

在如今es6、babel如此流行的情況下,大部分時候我們直接用includes就行啦。

感謝大家閱讀,另外,在這邊幫朋友推一個愛心眾籌,希望大家能夠奉獻點愛心,朋友母親,身患直腸癌,目前在北京武警總醫(yī)院接收治療,可留言留下您的聯(lián)系方式,日后感激大家!

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

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

相關(guān)文章

  • 前端實習面試匯總

    摘要:題目來源前端實習生面試總結(jié)最近開始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄下來進行一個總結(jié),同樣也希望對正在準備面實習生的童鞋們有所幫助最后一個參數(shù)是做什么用的答規(guī)定事件是冒泡還是捕獲。 最近一直在多看基礎(chǔ)的書多碼代碼準備找實習,在網(wǎng)上也搜羅了不少面經(jīng),現(xiàn)在把搜羅到的實習生面試題自己整理一下。 題目來源:前端實習生面試總結(jié)最近開始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄...

    張利勇 評論0 收藏0
  • 前端實習面試匯總

    摘要:題目來源前端實習生面試總結(jié)最近開始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄下來進行一個總結(jié),同樣也希望對正在準備面實習生的童鞋們有所幫助最后一個參數(shù)是做什么用的答規(guī)定事件是冒泡還是捕獲。 最近一直在多看基礎(chǔ)的書多碼代碼準備找實習,在網(wǎng)上也搜羅了不少面經(jīng),現(xiàn)在把搜羅到的實習生面試題自己整理一下。 題目來源:前端實習生面試總結(jié)最近開始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄...

    wangzy2019 評論0 收藏0
  • 前端實習面試匯總

    摘要:題目來源前端實習生面試總結(jié)最近開始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄下來進行一個總結(jié),同樣也希望對正在準備面實習生的童鞋們有所幫助最后一個參數(shù)是做什么用的答規(guī)定事件是冒泡還是捕獲。 最近一直在多看基礎(chǔ)的書多碼代碼準備找實習,在網(wǎng)上也搜羅了不少面經(jīng),現(xiàn)在把搜羅到的實習生面試題自己整理一下。 題目來源:前端實習生面試總結(jié)最近開始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄...

    NicolasHe 評論0 收藏0
  • javascript數(shù)組方法學習匯總

    摘要:將輸出新數(shù)組判斷數(shù)組中的每一項是否都滿足條件,都滿足返回,此方法相較于之前的幾個方法,返回值有差異,是一個布爾值。輸出數(shù)組用于將一組值轉(zhuǎn)化為數(shù)組輸出數(shù)組返回一個布爾值,表示某個數(shù)組中是否包含給定的值。 1、join(sep):將數(shù)組元素組合成字符串。以sep為分隔符,省略的話則默認使用逗號為分隔符。 var arr = [a,b,c]; console.log(arr.join(-))...

    zebrayoung 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<