How to Check if Two Maps are Equal in TypeScript


How to Check if Two Maps are Equal in TypeScript ?

Answer

To check if two maps are equal in TypeScript, you need to compare their sizes and iterate over the key-value pairs to ensure they match. This method provides a straightforward way to determine if two maps contain the same elements.



✐ Examples

1 Checking Equality of Two Maps by Iterating Over Key-Value Pairs

We can check if two maps are equal in TypeScript by comparing their sizes and iterating over the key-value pairs to ensure they match.

For example,

  1. We start by declaring and initializing two maps named map1 and map2 with some key-value pairs. In this example, the maps have string keys and integer values.
  2. We check if the sizes of map1 and map2 are equal. If their sizes are not equal, the maps are not equal.
  3. If their sizes are equal, we iterate over the key-value pairs of map1 and check if each key-value pair exists in map2 and matches the corresponding value.
  4. We print the result to the console using the console.log function to indicate whether the maps are equal or not.

TypeScript Program

const map1 = new Map<string, number>([
    ['one', 1],
    ['two', 2],
    ['three', 3]
]);
const map2 = new Map<string, number>([
    ['one', 1],
    ['two', 2],
    ['three', 3]
]);

// Check if the maps are equal
let equal = true;
if (map1.size !== map2.size) {
    equal = false;
} else {
    for (const [key, value] of map1) {
        if (!map2.has(key) || map2.get(key) !== value) {
            equal = false;
            break;
        }
    }
}

if (equal) {
    console.log('Maps are equal');
} else {
    console.log('Maps are not equal');
}

Output

Maps are equal

2 Checking Equality of Two Maps with Different Sizes

We can also check if two maps with different sizes are equal in TypeScript by comparing their sizes first and then iterating over the key-value pairs to ensure they match.

For example,

  1. We start by declaring and initializing two maps named map1 and map2 with some key-value pairs. In this example, the maps have string keys and integer values, and they have different sizes.
  2. We check if the sizes of map1 and map2 are equal. If their sizes are not equal, the maps are not equal.
  3. If their sizes are equal, we iterate over the key-value pairs of map1 and check if each key-value pair exists in map2 and matches the corresponding value.
  4. We print the result to the console using the console.log function to indicate whether the maps are equal or not.

TypeScript Program

const map1 = new Map<string, number>([
    ['one', 1],
    ['two', 2],
    ['three', 3]
]);
const map2 = new Map<string, number>([
    ['one', 1],
    ['two', 2]
]);

// Check if the maps are equal
let equal = true;
if (map1.size !== map2.size) {
    equal = false;
} else {
    for (const [key, value] of map1) {
        if (!map2.has(key) || map2.get(key) !== value) {
            equal = false;
            break;
        }
    }
}

if (equal) {
    console.log('Maps are equal');
} else {
    console.log('Maps are not equal');
}

Output

Maps are not equal

3 Checking Equality of Two Maps Using a Helper Function

We can create a helper function to check if two maps are equal in TypeScript, which provides a reusable way to compare maps.

For example,

  1. We start by declaring and initializing two maps named map1 and map2 with some key-value pairs. In this example, the maps have string keys and integer values.
  2. We define a helper function named areMapsEqual that takes two maps as parameters and returns a boolean value indicating whether the maps are equal.
  3. Inside the helper function, we compare the sizes of the maps. If their sizes are not equal, we return false.
  4. If their sizes are equal, we iterate over the key-value pairs of map1 and check if each key-value pair exists in map2 and matches the corresponding value, returning true if they do.
  5. We call the helper function with map1 and map2 as arguments and print the result to the console using the console.log function to indicate whether the maps are equal or not.

TypeScript Program

const map1 = new Map<string, number>([
    ['one', 1],
    ['two', 2],
    ['three', 3]
]);
const map2 = new Map<string, number>([
    ['one', 1],
    ['two', 2],
    ['three', 3]
]);

// Helper function to check if two maps are equal
function areMapsEqual(map1: Map<string, number>, map2: Map<string, number>): boolean {
    if (map1.size !== map2.size) {
        return false;
    }
    for (const [key, value] of map1) {
        if (!map2.has(key) || map2.get(key) !== value) {
            return false;
        }
    }
    return true;
}

// Check if the maps are equal using the helper function
if (areMapsEqual(map1, map2)) {
    console.log('Maps are equal');
} else {
    console.log('Maps are not equal');
}

Output

Maps are equal

Summary

In this tutorial, we learned How to Check if Two Maps are Equal in TypeScript language with well detailed examples.




More TypeScript Maps Tutorials

  1. How to create an Empty Map in TypeScript ?
  2. How to create a Map with Initial Key-Value Pairs in TypeScript ?
  3. How to Print a Map in TypeScript ?
  4. How to Add a Key-Value Pair to a Map in TypeScript ?
  5. How to Set a Default Value for a Key in a Map in TypeScript ?
  6. How to Update the Value for a Key in a Map in TypeScript ?
  7. How to Check if a Map is Empty in TypeScript ?
  8. How to Check if a Key Exists in a Map in TypeScript ?
  9. How to Check if a Value Exists in a Map in TypeScript ?
  10. How to Get the Value Associated with a Key in a Map in TypeScript ?
  11. How to Remove a Key-Value Pair from a Map in TypeScript ?
  12. How to Remove Key-Value Pairs from a Map Based on Values in TypeScript ?
  13. How to Clear All Key-Value Pairs from a Map in TypeScript ?
  14. How to Iterate Over Keys in a Map in TypeScript ?
  15. How to Iterate Over Values in a Map in TypeScript ?
  16. How to Iterate Over Entries (Key-Value Pairs) in a Map in TypeScript ?
  17. How to Get the Size (Number of Key-Value Pairs) of a Map in TypeScript ?
  18. How to Convert a Map to an Array of Keys in TypeScript ?
  19. How to Convert a Map to an Array of Values in TypeScript ?
  20. How to Convert a Map to an Array of Key-Value Pairs in TypeScript ?
  21. How to Merge Two Maps in TypeScript ?
  22. How to Copy a Map in TypeScript ?
  23. How to Check if Two Maps are Equal in TypeScript ?
  24. How to Sort a Map by Keys in TypeScript ?
  25. How to Sort a Map by Values in TypeScript ?
  26. How to Filter a Map Based on Keys in TypeScript ?
  27. How to Filter a Map Based on Values in TypeScript ?
  28. How to Reduce Values in a Map to a Single Value in TypeScript ?
  29. How to Convert an Array of Key-Value Pairs to a Map in TypeScript ?
  30. How to Convert a Map to a JSON String in TypeScript ?
  31. How to Convert a JSON String to a Map in TypeScript ?
  32. How to Swap Keys and Values in a Map in TypeScript ?
  33. How to Create a Map of Maps in TypeScript ?
  34. How to Iterate Over a Map of Maps in TypeScript ?