當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Javascript Array.findIndex()用法及代碼示例


它返回滿足提供的測試函數的給定數組中第一個元素的索引。否則返回-1。

  • 一旦找到滿足測試函數的元素,它就不會執行該函數。
  • 它不會更改原始數組。

用法:

array.findIndex(function(currentValue, index, arr), thisValue)

參數:


  • function:為數組中的每個元素運行的函數。
  • currentValue:當前元素的值。
  • index:當前元素的數組索引。
  • array:具有當前元素的數組對象所屬。
  • thisValue:要傳遞給函數的值,以用作其“this”值。
    如果此參數為空,則將值“undefined”作為其“this”值傳遞。
  • 返回值:
    如果數組中的任何元素通過測試,則返回數組元素索引,否則返回-1。
    JavaScript版本:
    ECMAScript 6
    瀏覽器支持:
    在第二列中,int值是相應函數瀏覽器的版本。

    特征 基本支持
    Chrome 45
    Edge Yes
    Firefox 25
    Internet Explorer No
    Opera 32
    Safari 8
    Android webview Yes
    Chrome for Android Yes
    Edge mobile Yes
    Firefox for Android 4
    Opera Android Yes
    iOS Safari 8

    範例1:

function isOdd(element, index, array) {
  return (element%2 == 1);
}

print([4, 6, 8, 12].findIndex(isOdd)); 

輸出:

-1

在此示例中,函數findIndex()查找包含奇數的所有索引。由於不存在奇數,因此它返回-1。

範例2:

function isOdd(element, index, array) {
  return (element%2 == 1);
}

print([4, 6, 7, 12].findIndex(isOdd)); 

輸出:

2

在此示例中,函數findIndex()查找包含奇數的所有索引。由於7是奇數,因此它返回其索引2。

程序:

  • 在此,JavaScript中的Array.findIndex()方法返回滿足提供的測試函數的數組中第一個元素的索引。否則返回-1。
    讓我們看一下JavaScript程序:
    // input array contain some elements whose index 
    // need to find which satisfy the provided  
    // testing function (element > 25). 
    var array = [ 10, 20, 30, 110, 60 ]; 
      
    // calling function for testing. 
    function finding_index(element)  
    { return element > 25; } 
      
    // Printing the index of element which is satisfies 
    // the provided testing function (element > 25) 
    console.log(array.findIndex(finding_index));

    輸出:

    > 2
    
  • 應用:

  • 此Array.findIndex()方法可用於查找數組中素數的元素的索引(如果沒有素數則返回-1)。
    讓我們看一下JavaScript程序:
    // function isPrime is used to find which 
    // number is prime or not prime. 
    function isPrime(n) { 
      if (n === 1) { 
        return false; 
      } else if (n === 2) { 
        return true; 
      } else { 
        for (var x = 2; x < n; x++) { 
          if (n % x === 0) { 
            return false; 
          } 
        } 
        return true; 
      } 
    } 
      
    // Printing -1 because prime number is not found. 
    console.log([ 4, 6, 8, 12 ].findIndex(isPrime)); 
      
    // Printing 2 the index of prime number (7) found. 
    console.log([ 4, 6, 7, 12 ].findIndex(isPrime));

    輸出:

    > -1
    > 2
    


相關用法


注:本文由純淨天空篩選整理自Kanchan_Ray大神的英文原創作品 JavaScript | Array.findIndex() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。