কার index কত ছোট
বাসে করে সবাই পিকনিকে যাওয়ার সময় সিট কার সামনে পড়ছে, আর কার পিছনে বসছে— এইটা নিয়ে মারামারি, মন কালাকালি, এমনকি হাতাহাতিও হয়। কারণ কে আগে বসছে, আর কে পরে বসছে— সেটা ম্যাটার করে। দেখবি যে, আগে সিট পায়, তার সিটের মান ছোট। হয়তো 1, 2 বা 3। আর যে পিছনে সিট পায়, তার সিট নাম্বার 12, 14, বা 17।
এমনকি খাবার দেয়ার লাইনে কে আগে আছে, আর কে পরে আছে— সেটা মেটার করে। কারণ, যে আগে আছে, সে আগে খাবার পাবে। আর যে পিছনে পড়ে আছে, সে পরে খাবার পাবে।
একইভাবে অ্যারের মধ্যে কোন উপাদান কোন পজিশনে আছে, সেটা মেটার করে। সেজন্য অ্যারের প্রতিটি উপাদানের একটি নির্দিষ্ট পজিশন থাকে, অনেকটা ক্রিকেট খেলায় খেলোয়াড়দের মতো। কে আগে ব্যাটিং করবে, আর কে পরে ব্যাটিং করবে, এমন একটা সিরিয়াল নম্বর থাকে। ঠিক একইভাবে, অ্যারের উপাদানগুলোরও একটি সিরিয়াল বা পজিশন থাকে।
const numbers = [3, 5, 66, 11, 45];অ্যারের প্রতিটি উপাদানের পজিশন জিরো থেকে শুরু হয়। অর্থাৎ 0 পজিশনে রয়েছে 3, 1 পজিশনে 5, 2 পজিশনে 66, 3 পজিশনে 11 এবং 4 পজিশনে 45।
[3, 5, 66, 11, 45];
Position -> 0 1 2 3 4সব প্রোগ্রামিং ল্যাঙ্গুয়েজে অ্যারে পজিশনিং সিস্টেম একই থাকে, অর্থাৎ স্টার্টিং পজিশন জিরো থেকে শুরু হয়। এই পজিশনকে অ্যারেতে ইন্ডেক্স বলা হয়। আর অ্যারের ইন্ডেক্সিং শুরু হয় জিরো (0) থেকে।
const numbers = [10, 25, 26, 31, 42, 84, 38, 12, 1];কে বসছে ওই চেয়ারে
এখন যদি তোকে জিজ্ঞাসা করা হয়, ওপরের অ্যারেতে 4 নম্বর ইন্ডেক্সের উপাদানের মান কত? উত্তর হবে, 4 নম্বর ইন্ডেক্সের মান 42। যদি বলা হয়, 1 নম্বর ইন্ডেক্সের মান কত? উত্তর হবে 25।
এখন যদি তুই কোনো নির্দিষ্ট ইন্ডেক্সের মান নিয়ে কাজ করতে চাস অথবা কোনো নির্দিষ্ট ইন্ডেক্সের মানকে আউটপুটে দেখাতে চাস, তখন তুই সেটা কীভাবে দেখাবি?
অ্যারের নাম লিখে স্কয়ার ব্র্যাকেটের মধ্যে ইন্ডেক্স লিখে দিলে সেটি ওই ইন্ডেক্সের মানকে বোঝাবে। যেমন, numbers[0] কোডের আউটপুট হবে 10। কারণ, জিরোতম ইন্ডেক্সের মান হলো 10।
const numbers = [10, 25, 26, 31, 42, 84, 38, 12, 1];
console.log(numbers[0]);
console.log(numbers[3]);
Output:
10
31এভাবে তুই প্রতিটি মানের ইন্ডেক্স প্রিন্ট করে বা বিভিন্ন কাজে ব্যবহার করতে পারবি। চাইলে একটি নির্দিষ্ট ইন্ডেক্সের মানকে অন্য কোনো ভেরিয়েবলেও স্টোর করতে পারিস:
const numbers = [10, 25, 26, 31, 42, 84, 38, 12, 1];
const fourth = numbers[4];
console.log(fourth);
Output : 42আর তুই যদি এমন কোনো একটা ইনডেক্স দিলি, সেখানে কোনো উপাদান নাই, তাহলে কী পাবি? তাহলে জাভাস্ক্রিপ্ট তোকে বলবে, সেই ইনডেক্সে উপাদান ডিফাইন করা নাই। অর্থাৎ সেই পজিশনে উপাদানের মান undefined।
const numbers = [10, 25, 26, 31, 42, 84, 38, 12, 1];
const fourth = numbers[14];
console.log(fourth);
Output: undefinedতুই চাইলে কোনো নির্দিষ্ট ইন্ডেক্সের মানকে আপডেটও করতে পারবি। জাস্ট বামপাশে অ্যারের নাম লিখে তারপর স্কয়ার ব্র্যাকেটে লিখে তার ভিতরে ইনডেক্সের মান লিখে দিবি। তারপর সমান চিহ্ন দিয়ে ডানপাশে নতুন মান দিয়ে দিবি। নিচের মতো করে—
const numbers = [10, 25, 26, 31, 42, 84, 38, 12, 1];
numbers[4] = 100;
console.log(numbers);
আউটপুট: [10, 25, 26, 31, 100, 84, 38, 12, 1] জাস্ট অ্যারের নাম লিখে স্কয়ার ব্র্যাকেটের মধ্যে ইন্ডেক্স দিয়ে সেখানে নতুন ভ্যালু অ্যাসাইন করলে সেটি ওই ইন্ডেক্সের মানকে আপডেট করে ফেলবে।
আমরা পরবর্তীতে আরও অনেক কিছু অ্যারে সম্পর্কে এক্সপ্লোর করব।
JavaScript Array Index Practice:
- তুই তোর সব বন্ধুদের নাম একটা অ্যারেতে রাখলি। এখন তুই বের কর, 3 নম্বর ইনডেক্সে কে আছে।
- তোর 7টা প্রিয় বইয়ের নাম একটা অ্যারেতে রাখ। তারপর দেখ, 5 নম্বর পজিশনের বইয়ের নাম কী।
- তুই একটা অ্যারে বানালি, যেখানে 1 থেকে 10 পর্যন্ত সংখ্যাগুলো রাখলি। এখন 7 নম্বর পজিশনের মানকে 30 দিয়ে আপডেট কর।
- তোর মোবাইলে কিছু গেম আছে এবং তুই সেগুলো একটা অ্যারেতে রাখলি— 'ফ্রি ফায়ার', 'পাবজি', 'ক্যান্ডি ক্রাশ', 'টেম্পল রান'। এখন তুই চাস, 2 নম্বর ইন্ডেক্সের গেমটা পরিবর্তন করে সেখানে ‘সাবওয়ে সার্ফার’ রাখবি। একটা প্রোগ্রাম লিখে সেটাই কর।
- তোর পরিবারের সদস্যের নাম একটা অ্যারেতে রাখ। তারপর থার্ড পজিশনের সদস্যের নাম আউটপুট হিসেবে দেখা।
- তুই প্ল্যান করলি 7টা দেশ ঘুরবি। দেশগুলোর নাম একটা অ্যারেতে রাখ। তারপর 4 নম্বর পজিশনের দেশের নাম বের কর।
- তোর পড়ার টেবিলে 4টা জিনিস আছে। সেগুলোর নাম একটা অ্যারেতে রাখ। তারপর 7 নম্বর পজিশনের জিনিসটা কী, সেটি বের কর।