ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript 配列に値が存在するかどうかを効率的に判断するにはどうすればよいですか?

JavaScript 配列に値が存在するかどうかを効率的に判断するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-07 22:52:13
オリジナル
762 人が閲覧しました

How Can I Efficiently Determine if a Value Exists in a JavaScript Array?

配列値の決定の詳細な調査

JavaScript では、配列内に要素が存在するかどうかを決定することが一般的なプログラミング タスクとなる場合があります。これに対処するために、配列反復手法を導入します。

提供された関数:

Array.prototype.contains = function(obj) {
    var i = this.length;
    while (i--) {
        if (this[i] == obj) {
            return true;
        }
    }
    return false;
}
ログイン後にコピー

残念ながら、この関数は常に false を返します。潜在的な問題の 1 つは、厳密な等価性ではなく型強制をチェックする if ステートメントで使用される等価演算子 (==) にあります。この行を if (this[i] === obj) に変更すると、問題は解決します。

ただし、jQuery のユーティリティ関数を使用すると、より効率的で簡潔な解決策が利用可能です。

$.inArray(value, array)
ログイン後にコピー

この関数は、配列内の特定の値の位置を検索し、見つかった場合はインデックスを返し、見つからない場合は -1 を返します。

例:

arrValues = ["Sam","Great", "Sample", "High"]
alert(arrValues.contains("Sam"));
ログイン後にコピー

カスタム関数を使用すると期待される出力は true (等価性チェックを修正した後)、または jQuery の $.inArray.

を使用すると 0 になります。

以上がJavaScript 配列に値が存在するかどうかを効率的に判断するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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