জাভাস্ক্রিপ্ট ফর অফ লুপ (JS For ... Of Loop)

Web Development - জাভাস্ক্রিপ্ট (JavaScript) জাভাস্ক্রিপ্ট কন্ট্রোল স্টেটমেন্ট (JS Control Statement) |
359
359

জাভাস্ক্রিপ্টে for...of লুপ একটি শক্তিশালী এবং সহজে ব্যবহারযোগ্য লুপিং কাঠামো যা ইটারেবল অবজেক্টগুলির উপাদানগুলোতে পুনরাবৃত্তি (iteration) করার জন্য ব্যবহৃত হয়। এটি অ্যারের মতো ইটারেবল অবজেক্টের প্রতিটি মানকে একে একে অ্যাক্সেস করার জন্য আদর্শ।


for...of লুপের সিনট্যাক্স

for...of লুপের সাধারণ সিনট্যাক্স নিচে দেওয়া হলো:

for (const item of iterable) {
    // কোড ব্লক
}

এখানে:

  • item: প্রতিটি ইটারেবল উপাদানের জন্য একটি ভেরিয়েবল।
  • iterable: একটি ইটারেবল অবজেক্ট, যেমন অ্যারে, স্ট্রিং, ম্যাপ, সেট ইত্যাদি।

একটি উদাহরণ:

const fruits = ["Apple", "Banana", "Cherry"];

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

আউটপুট:

Apple
Banana
Cherry

for...of লুপের ব্যবহার

১. অ্যারেতে পুনরাবৃত্তি করা

for...of লুপ অ্যারের প্রতিটি উপাদানে সহজেই প্রবেশ করতে সাহায্য করে।

const numbers = [10, 20, 30, 40, 50];

for (const number of numbers) {
    console.log(number);
}

আউটপুট:

10
20
30
40
50

২. স্ট্রিংয়ে পুনরাবৃত্তি করা

স্ট্রিং একটি ইটারেবল অবজেক্ট, তাই for...of লুপ ব্যবহার করে প্রতিটি চরিত্রে অ্যাক্সেস করা যায়।

const message = "Hello";

for (const char of message) {
    console.log(char);
}

আউটপুট:

H
e
l
l
o

৩. ম্যাপে পুনরাবৃত্তি করা

Map অবজেক্টেও for...of লুপ ব্যবহার করা যেতে পারে, যা কী-ভ্যালু পেয়ার নিয়ে কাজ করে।

const userRoles = new Map([
    ["admin", "John"],
    ["editor", "Jane"],
    ["viewer", "Doe"]
]);

for (const [role, name] of userRoles) {
    console.log(`${name} is a ${role}.`);
}

আউটপুট:

John is a admin.
Jane is a editor.
Doe is a viewer.

৪. সেটে পুনরাবৃত্তি করা

Set অবজেক্টের প্রতিটি ইউনিক উপাদানে for...of লুপ ব্যবহার করা যায়।

const uniqueNumbers = new Set([1, 2, 3, 2, 1]);

for (const number of uniqueNumbers) {
    console.log(number);
}

আউটপুট:

1
2
3

for...of লুপ বনাম for...in লুপ

যদিও for...of এবং for...in উভয়ই লুপিং করার জন্য ব্যবহৃত হয়, তাদের মধ্যে কিছু মূল পার্থক্য রয়েছে:

বৈশিষ্ট্যfor...offor...in
ব্যবহারইটারেবল অবজেক্টের মান পুনরাবৃত্তি করার জন্যঅবজেক্টের প্রপার্টির নাম পুনরাবৃত্তি করার জন্য
আউটপুটমান (values)কী (keys)
উপযুক্ত অবজেক্টঅ্যারে, স্ট্রিং, ম্যাপ, সেট ইত্যাদিসাধারণ অবজেক্ট (object)

উদাহরণ:

const obj = { a: 1, b: 2, c: 3 };

// for...in
for (const key in obj) {
    console.log(key);  // আউটপুট: a, b, c
}

// for...of (কেবল ইটারেবল অবজেক্টের জন্য)
const array = [1, 2, 3];
for (const value of array) {
    console.log(value);  // আউটপুট: 1, 2, 3
}

for...of লুপের সুবিধা

  1. সহজ সিনট্যাক্স: কোড লেখা এবং পড়া সহজ হয়।
  2. ইটারেবল অবজেক্টের সাথে সামঞ্জস্যপূর্ণ: অ্যারে, স্ট্রিং, ম্যাপ, সেট ইত্যাদির সাথে সহজে ব্যবহার করা যায়।
  3. স্বয়ংক্রিয়ভাবে ইটারেশন: ইটারেবল অবজেক্টের প্রতিটি উপাদানে স্বয়ংক্রিয়ভাবে প্রবেশ করা যায়।

for...of লুপের সীমাবদ্ধতা

  1. অবজেক্টের প্রপার্টিতে ব্যবহৃত নয়: শুধুমাত্র ইটারেবল অবজেক্টের মানে কাজ করে, সাধারণ অবজেক্টের প্রপার্টিতে নয়।
  2. কেবল ইটারেবল অবজেক্টের সাথে সীমাবদ্ধ: for...in এর মতো সকল অবজেক্টের জন্য উপযুক্ত নয়।

সারাংশ

জাভাস্ক্রিপ্টের for...of লুপ ইটারেবল অবজেক্টগুলির প্রতিটি উপাদানে সহজে পুনরাবৃত্তি করার জন্য একটি কার্যকরী উপায়। এর সহজ সিনট্যাক্স এবং ইটারেবল অবজেক্টের সাথে সামঞ্জস্যপূর্ণ বৈশিষ্ট্যগুলি কোডের পাঠযোগ্যতা এবং রক্ষণাবেক্ষণযোগ্যতা বৃদ্ধি করে। অ্যারে, স্ট্রিং, ম্যাপ, সেট ইত্যাদি ইটারেবল অবজেক্টগুলিতে for...of লুপ ব্যবহার করে ডেটা ম্যানিপুলেশন করা সহজ হয়, যা ডেভেলপারদের জন্য একটি গুরুত্বপূর্ণ টুল হিসেবে কাজ করে।

common.content_added_and_updated_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion