ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript 配列内で出現する要素をすべて見つけるにはどうすればよいですか?

JavaScript 配列内で出現する要素をすべて見つけるにはどうすればよいですか?

Barbara Streisand
リリース: 2024-10-30 02:56:28
オリジナル
629 人が閲覧しました

How to Find All Occurrences of an Element in a JavaScript Array?

配列内の要素出現のインデックスを取得

JavaScript 配列内で「Nano」などの要素の複数のインスタンスの位置を特定しようとする場合、メソッドjQuery.inArray や .indexOf() などは、最後の出現箇所を識別するだけなので不十分です。

1

var Cars = ["Nano", "Volvo", "BMW", "Nano", "VW", "Nano"];

ログイン後にコピー

解決策は次のとおりです。

.indexOf() メソッドを使用すると、開始インデックスを指定できます。これにより、配列をループして、指定された値のすべてのインスタンスを特定することができます。

1

2

3

4

5

6

7

8

9

10

<code class="javascript">function getAllIndexes(arr, val) {

  var indexes = [],

    i = -1;

  while ((i = arr.indexOf(val, i + 1)) != -1) {

    indexes.push(i);

  }

  return indexes;

}

 

var indexes = getAllIndexes(Cars, "Nano");</code>

ログイン後にコピー

ただし、VisioN がコメントで指摘したように、単純な for ループの方がより効率的で簡潔なソリューションを提供します。

1

2

3

4

5

6

7

8

9

10

<code class="javascript">function getAllIndexes(arr, val) {

  var indexes = [],

    i;

  for (i = 0; i < arr.length; i++) {

    if (arr[i] === val) {

      indexes.push(i);

    }

  }

  return indexes;

}</code>

ログイン後にコピー

以上がJavaScript 配列内で出現する要素をすべて見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート