কোনো লজিক বারবার চালাতে সবচেয়ে বেশি ব্যবহৃত স্টেটমেন্টগুলোর মধ্যে একটি হলো for লুপ।
JavaScript-এ এটি গঠিত হয় for কিওয়ার্ড, প্রথম বন্ধনীর ভেতরে মোড়া একটি হেডার, আর দ্বিতীয় বন্ধনীর ভেতরে মোড়া একটি কোড ব্লক দিয়ে, যার ভেতরে থাকে লুপের বডি।
for (initialization; condition; step) {
// code that is executed repeatedly as long as the condition is true
}
ইনিশিয়ালাইজেশন সাধারণত একটি কাউন্টার ভ্যারিয়েবল তৈরি করে, শর্ত যাচাই করে লুপটি চালিয়ে যাওয়া উচিত নাকি থামানো উচিত, আর স্টেপ প্রতিটি পুনরাবৃত্তির শেষে কাউন্টারটি বাড়ায়। হেডারের প্রতিটি অংশ সেমিকোলন দিয়ে আলাদা করা হয়।
const list = ['a', 'b', 'c'];
for (let i = 0; i < list.length; i++) {
// code that should be executed for each item list[i]
}
স্টেপ নির্ধারণ করা হয় সাধারণত JavaScript-এর ইনক্রিমেন্ট বা ডিক্রিমেন্ট অপারেটর দিয়ে, যেমনটি উপরের উদাহরণে দেখানো হয়েছে।
এই অপারেটরগুলো একটি ভ্যারিয়েবলকে জায়গাতেই বদলে দেয়।
++ একটি সংখ্যার সঙ্গে এক যোগ করে, -- একটি সংখ্যা থেকে এক বিয়োগ করে।
let i = 3;
i++;
// i is now 4
let j = 0;
j--;
// j is now -1
আপনি একজন আগ্রহী পাখি-পর্যবেক্ষক, যিনি হিসাব রাখেন আপনার বাগানে কত পাখি এসেছে। সাধারণত আপনি নোটবুকে ট্যালি করে পাখি গোনেন, কিন্তু আপনি আপনার ডেটা নিয়ে আরও ভালোভাবে কাজ করতে চান। গত কয়েক সপ্তাহে প্রতিদিনের যে পাখি-সংখ্যা আপনি নোটবুকে রেখেছিলেন, তা আপনি ইতোমধ্যেই ডিজিটাল করে ফেলেছেন।
এখন আপনি আপনার গোনা মোট পাখির সংখ্যা নির্ণয় করতে চান, কোনো নির্দিষ্ট সপ্তাহের পাখি-সংখ্যা হিসাব করতে চান এবং একটি গণনার ভুল সংশোধন করতে চান।
অনুশীলনের জন্য নিচের প্রতিটি কাজ সমাধান করতে একটি for লুপ ব্যবহার করুন।
চলুন, একটি সামগ্রিক চিত্র দেখে ডেটা বিশ্লেষণ শুরু করি। আপনি লগ রাখা শুরু করার পর থেকে মোট কত পাখি গুনেছেন তা বের করুন।
এমন একটি ফাংশন totalBirdCount তৈরি করুন যা প্রতিদিনের পাখি-সংখ্যা ধারণ করা একটি অ্যারের মতো অবজেক্ট গ্রহণ করে।
এটি আপনার গোনা মোট পাখির সংখ্যা রিটার্ন করবে।
birdsPerDay = [2, 5, 0, 7, 4, 1, 3, 0, 2, 5, 0, 1, 3, 1];
totalBirdCount(birdsPerDay);
// => 34
এখন যেহেতু আপনার পাখি-গণনার সংখ্যাগুলো সম্পর্কে একটি সাধারণ ধারণা তৈরি হয়েছে, আপনি আরও সূক্ষ্ম বিশ্লেষণ করতে চান।
এমন একটি ফাংশন birdsInWeek তৈরি করুন যা প্রতিদিনের পাখি-সংখ্যা ধারণ করা একটি অ্যারের মতো অবজেক্ট এবং একটি সপ্তাহ নম্বর গ্রহণ করে।
এটি ওই নির্দিষ্ট সপ্তাহে আপনার গোনা মোট পাখির সংখ্যা রিটার্ন করে।
আপনি ধরে নিতে পারেন যে সপ্তাহগুলো সবসময় সম্পূর্ণভাবে হিসাব করা হয়।
birdsPerDay = [2, 5, 0, 7, 4, 1, 3, 0, 2, 5, 0, 1, 3, 1];
birdsInWeek(birdsPerDay, 2);
// => 12
আপনি বুঝতে পারলেন যে আপনি যখনই পাখির হিসাব রাখার চেষ্টা করছিলেন, তখনই একটি পাখি বাগানের এক দূরের কোণে লুকিয়ে ছিল। আপনি বের করলেন যে এই পাখিটি সবসময় প্রতি দুই দিনে একদিন আপনার বাগানে কাটাত। ওই দিনগুলোর মাঝে এটি ঠিক কোথায় ছিল তা আপনি জানেন না, তবে নিশ্চিতভাবে আপনার বাগানে নয়। আপনার পাখি-পর্যবেক্ষকের অন্তর্দৃষ্টিও আপনাকে বলে যে আপনার তালিকায় হিসাব করা প্রথম দিনটিতে পাখিটি আপনার বাগানে ছিল।
এই নতুন তথ্য অনুযায়ী, এমন একটি ফাংশন fixBirdCountLog লিখুন যা আর্গুমেন্ট হিসেবে প্রতিদিন গোনা পাখির একটি অ্যারের মতো অবজেক্ট নেয়। এটি প্রদত্ত অ্যারেটি পরিবর্তন করে গণনার ভুল সংশোধন করবে।
birdsPerDay = [2, 5, 0, 7, 4, 1];
fixBirdCountLog(birdsPerDay);
// => [3, 5, 1, 7, 5, 1]
Exercism-এ সাইন আপ করুন, JavaScript ট্র্যাকের 37টি কনসেপ্ট159টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।