ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript で配列の等価性を確実にチェックするにはどうすればよいですか?

JavaScript で配列の等価性を確実にチェックするにはどうすればよいですか?

DDD
リリース: 2024-12-12 12:04:16
オリジナル
841 人が閲覧しました

How to Reliably Check for Array Equality in JavaScript?

JavaScript で配列の等価性を確認する方法

2 つの配列が等しいかどうかを判断することは、プログラミングにおける一般的なタスクです。 JavaScript には配列を比較するためのさまざまなメソッドが用意されていますが、その微妙な点を理解することが重要です。

比較演算子

等価 (==) または厳密等価 (===) 演算子を使用すると、常に正確な結果が得られるとは限りません。結果。次のデモは、この問題を示しています。

var a = [1, 2, 3];
var b = [3, 2, 1];
var c = new Array(1, 2, 3);

alert(a == b + "|" + b == c);
ログイン後にコピー

このコードは、"false|true" を出力します。これは、== または === のみを使用するだけでは配列の等価性を比較するには不十分であることを示します。

Custom等価関数

配列の等価性を正確に判断するには、カスタム関数を定義できます。

function arraysEqual(a, b) {
  if (a === b) return true;
  if (a == null || b == null) return false;
  if (a.length !== b.length) return false;

  // If you don't care about the order of the elements inside
  // the array, you should sort both arrays here.
  // Please note that calling sort on an array will modify that array.
  // you might want to clone your array first.

  for (var i = 0; i < a.length; ++i) {
    if (a[i] !== b[i]) return false;
  }
  return true;
}
ログイン後にコピー

これ関数は、null 配列、長さの等しいか、要素ごとの等しいかをチェックします。これは、さまざまなシナリオで配列の等価性を判断するための堅牢な方法です。

jQuery の機能

jQuery は、配列の等価性比較専用の組み込みメソッドを提供しません。ただし、JavaScript の配列操作機能と jQuery のトラバーサル メソッドを利用して、独自のソリューションを実装することはできます。

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

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