কম্পিউটার টিউটোরিয়াল

দুই ২D অ্যারে সমান কিনা চেক - JavaScript

দুটি দ্বিমাত্রিক অ্যারে (ম্যাট্রিক্স) একে অপরের সমান কিনা তা চেক করার পদ্ধতি।

সমতায়ের শর্তাবলী

  • একই সাইজের রো এবং কলাম
  • প্রতিটি অবস্থানে arr1[i][j] === arr2[i][j]

সমাধান

const areEqual = (arr1, arr2) => {
  // দ্রুত ফেইল: রো সংখ্যা চেক
  if (arr1.length !== arr2.length) return false;
  
  for (let i = 0; i < arr1.length; i++) {
    const row1 = arr1[i];
    const row2 = arr2[i];
    
    // কলাম সংখ্যা চেক
    if (row1.length !== row2.length) return false;
    
    // প্রতিটি উপাদান চেক
    for (let j = 0; j < row1.length; j++) {
      if (row1[j] !== row2[j]) return false;
    }
  }
  
  return true;
};

// টেস্ট
const arr1 = [
  [1, 1, 1],
  [2, 2, 2],
  [3, 3, 3]
];

const arr2 = [
  [1, 1, 1],
  [2, 2, 2],
  [3, 3, 3]
];

const arr3 = [
  [1, 1, 1],
  [2, 2, 2],
  [3, 3, 4] // আলাদা
];

console.log(areEqual(arr1, arr2)); // true
console.log(areEqual(arr1, arr3)); // false

ফাংশনাল পদ্ধতি (ES6+)

const areEqualFP = (arr1, arr2) => 
  arr1.length === arr2.length &&
  arr1.every((row, i) => 
    row.length === arr2[i].length &&
    row.every((val, j) => val === arr2[i][j])
  );

ডিপ ইকোয়ালিটি (নেস্টেড অবজেক্ট/অ্যারে)

const deepEqual = (a, b) => JSON.stringify(a) === JSON.stringify(b);
// নোট: কী অর্ডার önemli, ফাংশন/অনডিফাইনড হ্যান্ডল করে না

উৎপাদন

true
  1. জাভাস্ক্রিপ্টে অ্যারে vs সেট

  2. জাভাস্ক্রিপ্টে দুটি অ্যারে জয়েন করা

  3. জাভাস্ক্রিপ্টে লুজ ইকুয়ালিটি

  4. জাভাস্ক্রিপ্টে দুটি অ্যারে গুণ করা