JavaScriptの配列検索

配列の検索および検索メソッド

参照してください:

JavaScript Array indexOf()

indexOf() 方法は配列内で要素の値を検索し、その位置を返します。

注意:最初の項目の位置は0、次の項目の位置は1、それ以降と続きます。

配列内で "Apple" という項目を検索します:

const fruits = ["Apple", "Orange", "Apple", "Mango"];
let position = fruits.indexOf("Apple") + 1;

実際に試してみてください

文法

array.indexOf(item, start)
item 必須。検索する項目。
start オプション。検索の開始位置。負の値は配列の末尾からカウントし、末尾まで検索します。

返り値:

  • 項目が見つからない場合、-1を返します。
  • 項目が複数回出現している場合、最初に出现した位置を返します。

JavaScript Array lastIndexOf()

lastIndexOf() 方法と indexOf() 同じですが、指定された要素の最後の位置を返します。

配列内で "Apple" という項目を検索します:

const fruits = ["Apple", "Orange", "Apple", "Mango"];
let position = fruits.lastIndexOf("Apple") + 1;

実際に試してみてください

文法

array.lastIndexOf(item, start)
item 必須。検索する項目。
start オプション。検索の開始位置。負の値は配列の末尾からカウントし、先頭まで検索します。

JavaScript Array includes()

ECMAScript 2016では、 Array.includes() 方法。それにより、配列に特定の要素(NaNも含まれますが、indexOfとは異なります)が含まれているかどうかを確認できます。

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.includes("Mango"); // 返回 true

実際に試してみてください

文法

array.includes(search-item)

search-item:検索する要素。

注意:includes() は NaN 値をチェックすることができますが、 indexOf() はできません。

ブラウザのサポート

includes() それは ECMAScript 2016 の機能。

2017年3月から、すべての現代ブラウザが ES2016 をサポートしています:

Chrome Edge Firefox Safari Opera
Chrome 52 Edge 15 Firefox 52 Safari 10.1 Opera 39
2016年7月 2017年4月 2017年3月 2017年5月 2016年8月

Internet Explorer は includes() をサポートしていません。

JavaScript Array find()

find() 方法はテスト関数を通じて最初の配列要素の値を返します。

18より大きな最初の要素を検索します:

const numbers = [4, 9, 16, 25, 29];
let first = numbers.find(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

実際に試してみてください

注意:関数は3つの引数を受け取ります:

  • 要素の値
  • 要素のインデックス
  • 配列自体

ブラウザのサポート

find() それは ES6(JavaScript 2015)の機能です。

2017年6月から、すべての現代ブラウザが ES6 をサポートしています:

Chrome Edge Firefox Safari Opera
Chrome 51 Edge 15 Firefox 54 Safari 10 Opera 38
2016年5月 2017年4月 2017年6月 2016年9月 2016年6月

Internet Explorer はサポートしていません find()

JavaScript Array findIndex()

findIndex() 方法はテスト関数を通じて最初の配列要素のインデックスを返します。

18より大きな最初の要素のインデックスを検索します:

const numbers = [4, 9, 16, 25, 29];
let first = numbers.findIndex(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

実際に試してみてください

注意:関数は3つの引数を受け取ります:

  • 要素の値
  • 要素のインデックス
  • 配列自体

ブラウザのサポート

findIndex() それは ES6(JavaScript 2015)の機能です。

2017年6月から、すべての現代ブラウザが ES6 をサポートしています:

Chrome Edge Firefox Safari Opera
Chrome 51 Edge 15 Firefox 54 Safari 10 Opera 38
2016年5月 2017年4月 2017年6月 2016年9月 2016年6月

Internet Explorer はサポートしていません findIndex()

JavaScript Array findLast()

ES2023 で追加されました findLast() 方法,それが配列の末尾から検索を開始し、条件を満たす最初の要素の値を返します。

const temp = [27, 28, 30, 40, 42, 35, 30];
let high = temp.findLast(x => x > 40);

実際に試してみてください

ブラウザのサポート

findLast() ES2023 の機能です。

2023 年 7 月から、すべての現代ブラウザがサポートしています:

Chrome Edge Firefox Safari Opera
Chrome 110 Edge 110 Firefox 115 Safari 16.4 Opera 96
2023 年 2 月 2023 年 2 月 2023 年 7 月 2023 年 3 月 2023 年 5 月

JavaScript Array findLastIndex() メソッド

findLastIndex() 条件を満たす最後の要素のインデックスを検索します。

const temp = [27, 28, 30, 40, 42, 35, 30];
let pos = temp.findLastIndex(x => x > 40);

実際に試してみてください

ブラウザのサポート

findLastIndex() ES2023 の機能です。

2023 年 7 月から、すべての現代ブラウザがサポートしています:

Chrome Edge Firefox Safari Opera
Chrome 110 Edge 110 Firefox 115 Safari 16.4 Opera 96
2023 年 2 月 2023 年 2 月 2023 年 7 月 2023 年 3 月 2023 年 5 月

完全な配列リファレンスマニュアル

完全な配列リファレンスが必要な場合は、以下にアクセスしてください:JavaScript 配列リファレンスマニュアル

このマニュアルには、すべての配列属性とメソッドの説明と例が含まれています。