JavaScript Map কী? Map Methods ও Examples সম্পূর্ণ গাইড

JavaScript Map কী, কীভাবে কাজ করে এবং set(), get(), has(), delete(), keys(), values(), entries() ও forEach() method উদাহরণসহ শিখুন।

JavaScript-এর Map হলো একটি built-in object, যেখানে data key-value pair আকারে সংরক্ষণ করা যায়। Map ব্যবহার করে key-এর মাধ্যমে খুব সহজে value যোগ, খোঁজা, পরিবর্তন এবং মুছে ফেলা যায়।

Info!
JavaScript Map মূলত key-value data সংরক্ষণ করার জন্য ব্যবহার করা হয়। Map-এর key হিসেবে string, number, object, function সহ বিভিন্ন ধরনের value ব্যবহার করা যায়।

JavaScript Map তৈরি করা

JavaScript-এ একটি নতুন Map তৈরি করতে new Map() ব্যবহার করা হয়।

const fruits = new Map();

এরপর set() method ব্যবহার করে Map-এ key এবং value যোগ করা যায়।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);
fruits.set("mangoes", 100);

console.log(fruits);

JavaScript Map-এর Key এবং Value

Map-এর প্রতিটি entry-তে একটি key এবং একটি value থাকে।

key → value

apples  → 500
bananas → 504
mangoes → 100

এখানে apples, bananas এবং mangoes হলো key এবং 500, 504, 100 হলো value।

JavaScript Map-এর set() Method

set() method ব্যবহার করে Map-এ নতুন key-value pair যোগ করা যায়।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);
fruits.set("mangoes", 100);

একই Key আবার ব্যবহার করলে কী হয়?

একই key আবার set() করলে আগের value update হয়ে যায়।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("apples", 120);

console.log(fruits.get("apples"));

Output:

120

Info!
Map-এর key unique হয়। একই key আবার ব্যবহার করলে নতুন value আগের value-কে replace করে।

JavaScript Map-এর get() Method

get() method ব্যবহার করে কোনো key-এর value বের করা হয়।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);

console.log(fruits.get("apples"));

Output:

500

Map-এর মধ্যে key না থাকলে get() undefined return করে।

console.log(fruits.get("orange"));

Output:

undefined

JavaScript Map-এর has() Method

has() method ব্যবহার করে কোনো key Map-এর মধ্যে আছে কি না check করা হয়। এটি true অথবা false return করে।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);

console.log(fruits.has("apples"));
console.log(fruits.has("orange"));

Output:

true
false

JavaScript Map-এর delete() Method

delete() method ব্যবহার করে Map থেকে কোনো key এবং তার value remove করা যায়।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);
fruits.set("mangoes", 100);

fruits.delete("apples");

console.log(fruits);

এখন apples Map-এর মধ্যে থাকবে না।

JavaScript Map-এর clear() Method

clear() method ব্যবহার করলে Map-এর সব key-value pair remove হয়ে যায়।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);
fruits.set("mangoes", 100);

fruits.clear();

console.log(fruits);

Output:

Map(0) {}

JavaScript Map-এর size Property

size property দিয়ে Map-এর মধ্যে মোট কতটি entry আছে তা জানা যায়।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);
fruits.set("mangoes", 100);

console.log(fruits.size);

Output:

3

JavaScript Map-এর keys() Method

keys() method Map-এর সব key-এর একটি iterator return করে।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);
fruits.set("mangoes", 100);

for (const key of fruits.keys()) {
  console.log(key);
}

Output:

apples
bananas
mangoes

JavaScript Map-এর values() Method

values() method Map-এর সব value-এর একটি iterator return করে।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);
fruits.set("mangoes", 100);

for (const value of fruits.values()) {
  console.log(value);
}

Output:

500
504
100

JavaScript Map-এর entries() Method

entries() method Map-এর key এবং value একসাথে [key, value] pair হিসেবে return করে।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);
fruits.set("mangoes", 100);

for (const entry of fruits.entries()) {
  console.log(entry);
}

Output:

["apples", 500]
["bananas", 504]
["mangoes", 100]

Key এবং Value আলাদা করে নেওয়া

for (const [key, value] of fruits.entries()) {
  console.log(key, value);
}

Output:

apples 500
bananas 504
mangoes 100

Map-এর forEach() Method

forEach() method ব্যবহার করে Map-এর প্রতিটি key-value pair-এর উপর একই ধরনের কাজ করা যায়।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);
fruits.set("mangoes", 100);

fruits.forEach(function(value, key) {
  console.log(key + " = " + value);
});

Output:

apples = 500
bananas = 504
mangoes = 100

Info!
Map-এর forEach() callback-এ প্রথম parameter হলো value এবং দ্বিতীয় parameter হলো key।

Map-এর for...of Loop

for...of loop ব্যবহার করেও Map-এর key এবং value একসাথে পাওয়া যায়।

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);
fruits.set("mangoes", 100);

for (const [key, value] of fruits) {
  console.log(key + " = " + value);
}

Output:

apples = 500
bananas = 504
mangoes = 100

Map-এর entries() এবং for...of

Map-এর default iterator entries()-এর মতো key-value pair return করে। তাই নিচের দুটি code একই ধরনের result দেয়।

for (const [key, value] of fruits) {
  console.log(key, value);
}

for (const [key, value] of fruits.entries()) {
  console.log(key, value);
}

Map-এ বিভিন্ন ধরনের Key ব্যবহার

Map-এর একটি গুরুত্বপূর্ণ সুবিধা হলো key হিসেবে বিভিন্ন ধরনের value ব্যবহার করা যায়।

const myMap = new Map();

myMap.set("name", "Rahim");
myMap.set(100, "One Hundred");

const obj = {id: 1};

myMap.set(obj, "User Object");

console.log(myMap.get("name"));
console.log(myMap.get(100));
console.log(myMap.get(obj));

Map এবং Object-এর পার্থক্য

বিষয় Map Object
Data Structure Key-Value Pair Property-Value
Key বিভিন্ন ধরনের value মূলত String/Symbol
Size size property আছে সরাসরি size নেই
Iteration সহজে iterate করা যায় আলাদা methods প্রয়োজন হতে পারে
Methods set(), get(), has(), delete() Built-in Map methods নেই

JavaScript Map শেখার গুরুত্বপূর্ণ Methods

Method / Property কাজ
set() Key এবং value যোগ বা update করে
get() Key দিয়ে value বের করে
has() Key আছে কি না check করে
delete() একটি entry remove করে
clear() সব entry remove করে
keys() সব key-এর iterator দেয়
values() সব value-এর iterator দেয়
entries() Key এবং value-এর pair দেয়
forEach() প্রতিটি entry-এর উপর function চালায়
size মোট entry সংখ্যা দেখায়

JavaScript Map সম্পূর্ণ Example

const fruits = new Map();

fruits.set("apples", 500);
fruits.set("bananas", 504);
fruits.set("mangoes", 100);

console.log(fruits.get("apples"));

console.log(fruits.has("bananas"));

console.log(fruits.size);

for (const [key, value] of fruits) {
  console.log(key + " = " + value);
}

fruits.delete("mangoes");

console.log(fruits);

Map শেখার ধাপ

  1. new Map() দিয়ে Map তৈরি করা শিখুন।
  2. set() দিয়ে key-value যোগ করা শিখুন।
  3. get() দিয়ে value বের করা শিখুন।
  4. has() দিয়ে key check করা শিখুন।
  5. delete() দিয়ে entry remove করা শিখুন।
  6. clear() এবং size ব্যবহার করুন।
  7. keys(), values() এবং entries() practice করুন।
  8. forEach() এবং for...of দিয়ে Map iterate করুন।

Warning!
Map-এর key এবং value-এর syntax ঠিকভাবে লিখুন। set(), get(), has() ইত্যাদি JavaScript-এ case-sensitive।

Default Map হলো key-value data নিয়ে কাজ করার জন্য JavaScript-এর একটি powerful built-in data structure।
Info! Map-এর key হিসেবে object, number, string এবং অন্যান্য value ব্যবহার করা যায়।
Success! আপনি set(), get(), has(), delete(), keys(), values() এবং entries() বুঝলে Map-এর basic অংশ ভালোভাবে আয়ত্ত করতে পারবেন।
Error! Map-এর key না থাকলে get() সাধারণত undefined return করে। তাই প্রয়োজন অনুযায়ী has() দিয়ে key আগে check করা যেতে পারে।

উপসংহার

JavaScript Map key-value data সংরক্ষণ এবং পরিচালনার জন্য একটি গুরুত্বপূর্ণ data structure। set(), get(), has(), delete(), clear(), keys(), values(), entries() এবং forEach() হলো Map-এর গুরুত্বপূর্ণ methods ও properties। নিয়মিত ছোট ছোট example practice করলে JavaScript Map খুব সহজেই আয়ত্ত করা সম্ভব।

Post a Comment

To avoid SPAM, all comments will be moderated before being displayed.
Don't share any personal or sensitive information.