在 JavaScript 中如何知道兩個陣列包含相同的值?


假設以下為我們的陣列 -

var firstArray=[100,200,400];
var secondArray=[400,100,200];

你可以使用 sort() 方法對兩個陣列進行排序,並使用 for 迴圈來比較每個值,如下面的程式碼所示 -

示例

var firstArray=[100,200,400];
var secondArray=[400,100,200];
function areBothArraysEqual(firstArray, secondArray) {
   if (!Array.isArray(firstArray) || ! Array.isArray(secondArray) ||
   firstArray.length !== secondArray.length)
   return false;
   var tempFirstArray = firstArray.concat().sort();
   var tempSecondArray = secondArray.concat().sort();
   for (var i = 0; i < tempFirstArray.length; i++) {
      if (tempFirstArray[i] !== tempSecondArray[i])
         return false;
   }
   return true;
}
if(areBothArraysEqual(firstArray,secondArray))
console.log("Both are equals");
else
console.log("Both are not equals");

要執行以上程式,你需要使用以下命令 -

node fileName.js.

此處,我的檔名是 demo156.js。

輸出

PS C:\Users\Amit\JavaScript-code> node demo156.js
Both are equals

更新於: 12-Sep-2020

273 次瀏覽

開啟你的 事業

完成課程以獲得認證

立即開始
廣告