ホームページ > ウェブフロントエンド > jsチュートリアル > 配列に含まれる関数が常に False を返すのはなぜですか? JavaScript 配列の値を確実にチェックするにはどうすればよいですか?

配列に含まれる関数が常に False を返すのはなぜですか? JavaScript 配列の値を確実にチェックするにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-15 03:14:09
オリジナル
826 人が閲覧しました

Why Does My Array Contains Function Always Return False, and How Can I Reliably Check for Values in JavaScript Arrays?

配列内の値を確認する方法

配列内に特定の値が存在するかどうかを判断することは、一般的なプログラミング タスクです。ただし、次のカスタム関数を使用すると、予期しない動作が発生する可能性があります (常に false を返します)。これは、この関数が厳密な等価 (==) 比較に依存しているためで、特定の場合 (等しいとみなされるが同一ではない数値など) では失敗する可能性があります。

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

jQuery を使用した堅牢なソリューション

配列の信頼できる値チェックを行うには、jQuery のユーティリティの使用を検討してください。 function:

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

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

使用例

追加の参照
var arrValues = ["Sam","Great", "Sample", "High"];
var value = "Sam";

var result = $.inArray(value, arrValues);

if (result !== -1) {
    // Value found in array
} else {
    // Value not found in array
}
ログイン後にコピー

[配列にオブジェクトが含まれているかどうかを確認するにはどうすればよいですか? JavaScript?](https://stackoverflow.com/questions/1232040/how-do-i-check-if-an-array-includes-an-object-in-javascript)

    以上が配列に含まれる関数が常に False を返すのはなぜですか? JavaScript 配列の値を確実にチェックするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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