例1:JSON.stringify()を使用して配列を比較する
// program to compare two arrays
function compareArrays(arr1, arr2) {
// compare arrays
const result = JSON.stringify(arr1) == JSON.stringify(arr2)
// if result is true
if(result) {
console.log('The arrays have the same elements.');
}
else {
console.log('The arrays have different elements.');
}
}
const array1 = [1, 3, 5, 8];
const array2 = [1, 3, 5, 8];
compareArrays(array1, array2);
出力
The arrays have the same elements.
ザ・ JSON.stringify()
メソッドは配列をJSON文字列に変換します。
JSON.stringify([1, 3, 5, 8]); // "[1,3,5,8]"
次に、2つの配列文字列を使用して比較します ==
。
例2:forループを使用して配列を比較する
// program to extract value as an array from an array of objects
function compareArrays(arr1, arr2) {
// check the length
if(arr1.length != arr2.length) {
return false;
}
else {
let result = false;
// comparing each element of array
for(let i=0; i<arr1.length; i++) {
if(arr1[i] != arr2[i]) {
return false;
}
else {
result = true;
}
}
return result;
}
}
const array1 = [1, 3, 5, 8];
const array2 = [1, 3, 5, 8];
const result = compareArrays(array1, array2);
// if result is true
if(result) {
console.log('The arrays have the same elements.');
}
else {
console.log('The arrays have different elements.');
}
出力
The arrays have the same elements.
上記のプログラムでは、
配列要素の長さは、 length
プロパティ。 両方の配列の長さが異なる場合、 false
が返されます。
そうしないと、
- ザ・
for
ループは、最初の配列のすべての要素を反復処理するために使用されます。 - 各反復中に、最初の配列の要素が2番目の配列の対応する要素と比較されます。
arr1[i] != arr2[i]
- 両方の配列の対応する配列要素が等しくない場合、
false
が返され、ループが終了します。 - すべての要素が等しい場合、
true
が返されます。
注意:配列要素にオブジェクトが含まれている場合、上記のプログラムは機能しません。
例えば、
array1 = [1, {a : 2}, 3, 5];
Hope this helps!
Source link