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


JavaScript Array indexOf()用法及代碼示例


在本教程中,我們將借助示例了解 JavaScript Array indexOf() 方法。

indexOf()方法返回數組元素出現的第一個索引,或-1如果沒有找到。

示例

let languages = ["Java", "JavaScript", "Python", "JavaScript"];

// get the index of the first occurrence of "JavaScript"
let index = languages.indexOf("JavaScript");
console.log(index);

// Output: 1

indexOf() 語法

用法:

arr.indexOf(searchElement, fromIndex)

這裏,arr 是一個數組。

參數:

indexOf() 方法包含:

  • searchElement - 要在數組中定位的元素。
  • fromIndex(可選)- 開始搜索的索引。默認情況下,它是0.

返回:

  • 如果元素至少出現一次,則返回數組中元素的第一個索引。
  • 返回-1如果在數組中找不到元素。

注意: indexOf()比較searchElement數組的元素使用嚴格平等(類似於triple-equals 運算符或===)。

示例 1:使用 indexOf() 方法

var priceList = [10, 8, 2, 31, 10, 1, 65];

// indexOf() returns the first occurance
var index1 = priceList.indexOf(31);
console.log(index1); // 3

var index2 = priceList.indexOf(10);
console.log(index2); // 0

// second argument specifies the search's start index
var index3 = priceList.indexOf(10, 1);
console.log(index3); // 4

// indexOf returns -1 if not found
var index4 = priceList.indexOf(69.5);
console.log(index4); // -1

輸出

3
0
4
-1

注意:

  • 如果fromIndex >= array.length, 數組不被搜索並且-1被退回。
  • 如果從索引 < 0, index 是向後計算的。例如,-1表示最後一個元素的索引,依此類推。

示例 2:查找元素的所有出現

function findAllIndex(array, element) {
  indices = [];
  var currentIndex = array.indexOf(element);
  while (currentIndex != -1) {
    indices.push(currentIndex);
    currentIndex = array.indexOf(element, currentIndex + 1);
  }
  return indices;
}

var priceList = [10, 8, 2, 31, 10, 1, 65, 10];

var occurance1 = findAllIndex(priceList, 10);
console.log(occurance1); // [ 0, 4, 7 ]

var occurance2 = findAllIndex(priceList, 8);
console.log(occurance2); // [ 1 ]

var occurance3 = findAllIndex(priceList, 9);
console.log(occurance3); // []

輸出

[ 0, 4, 7 ]
[ 1 ]
[]

示例 3:查找元素是否存在 else 添加元素

function checkOrAdd(array, element) {
  if (array.indexOf(element) === -1) {
    array.push(element);
    console.log("Element not Found! Updated the array.");
  } else {
    console.log(element + " is already in the array.");
  }
}

var parts = ["Monitor", "Keyboard", "Mouse", "Speaker"];

checkOrAdd(parts, "CPU"); // Element not Found! Updated the array.
console.log(parts); // [ 'Monitor', 'Keyboard', 'Mouse', 'Speaker', 'CPU' ]

checkOrAdd(parts, "Mouse"); // Mouse is already in the array.

輸出

Element not Found! Updated the array.
[ 'Monitor', 'Keyboard', 'Mouse', 'Speaker', 'CPU' ]
Mouse is already in the array.

相關用法


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