আসছে তেড়ে Array, পারলে ঠেকা
একদিন তুই ঘুম থেকে উঠে দেখলি, বাসায় খাওয়ার কিছুই নেই। তখন তুই দোকানে গেলি এক হালি ডিম কিনতে।
তুই নিশ্চয়ই একটা ডিম কিনে বাসায় এসে সেটা বাসায় রেখে আবার দোকানে গিয়ে আরেকটা ডিম আনতে যাবি না। আবার সেটা বাসায় রাখার পর একইভাবে তৃতীয় এবং চতুর্থ ডিম আনতে যাবি না; বরং চারটা ডিমই একেবারে নিয়ে আসবি।
একইভাবে তুই যদি এক কেজি আলু বা এক ডজন কমলা কিনিস, সেগুলাও আলাদা আলাদাভাবে রাখিস না; বরং একসাথেই রাখিস।
কোডিংয়ের ক্ষেত্রেও যদি আমাদের একসাথে অনেকগুলো মান নিয়ে কাজ করতে হয়, তাহলে একাধিক ভেরিয়েবল ডিক্লেয়ার না করে একটি অ্যারে ব্যবহার করা যায়। অ্যারে হলো একটি ভেরিয়েবলে অনেকগুলো মান গুছিয়ে রাখার সিস্টেম।
অ্যারে ডিক্লেয়ার করতে হলে তিনটি কাজ করতে হবে:
ভেরিয়েবলের নাম দেয়ার মতো করে অ্যারের একটি নাম দিতে হবে।
থার্ড ব্র্যাকেট বা স্কয়ার ব্র্যাকেটের [ ] মধ্যে যতগুলা ম্যান আছে, সবগুলার মান রাখতে হবে।
প্রতিটি মানের পরে কমা (,) ব্যবহার করতে হবে। তবে সর্বশেষ উপাদানের পরে আর কমা দেয়া লাগবে না। অর্থাৎ যেকোনো দুইটা মানের মধ্যে কমা চিহ্ন দিতে হবে।
যেমন:
const numbers = [12, 22, 141, 121];অ্যারে হলো অনেকগুলো মান একটি ভেরিয়েবলে রাখার সিস্টেম। আগে আমরা যেভাবে একেকটি ভেরিয়েবল ডিক্লেয়ার করতাম, সেখানে একটা ভেরিয়েবলে একটা মান রাখতাম। আর এখন একসাথে অনেকগুলা মান রাখার জন্য আলাদা আলাদা ভেরিয়েবল ডিক্লেয়ার না করে একটি অ্যারে ব্যবহার করে অনেকগুলো মান রাখতে পারস।
যেমন, ধর তোর 1 থেকে 10 পর্যন্ত সংখ্যা রাখা দরকার। সে ক্ষেত্রে তুই আলাদা আলাদা 10টা ভেরিয়েবল ডিক্লেয়ার করে দশটা মান দশটা ভেরিয়েবলে রাখতে পারবি। তবে এইগুলা চেইঞ্জ করা, আরও মান যোগ করা বা দুই-একটা বাদ দেয়া অনেক ভেজাল হয়ে যায়। তার চাইতে বরং তুই সহজেই একটি অ্যারে ব্যবহার করতে পারস।
const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];এই সিস্টেমে আমরা বিভিন্ন ধরনের অ্যারে তৈরি করতে পারি। যেমন:
const marks = [82, 76, 54, 45];
const friends = ['abul', 'babul', 'cabul', 'dabul', 'bulbul'];
const passed = [true, false, true, false];সাধারণত একই ধরনের মান অ্যারেতে রাখা ভালো। তবে বিভিন্ন ধরনের মানও রাখা যায়। যদিও এটি করা উচিত না। অর্থাৎ কোনো একটা অ্যারের সবগুলা উপাদান হয় সংখ্যা বা নাম্বার টাইপের মান হতে পারে। অর্থাৎ সবগুলা উপাদানের মান একই টাইপের মান হওয়া উচিত।
const mixedArray = [12, 'Dim', true, 45.566];লম্বা খাম্বা দৈর্ঘ্য
বিয়ের বাজারে সবাই জানতে চায়, কে কত লম্বা বা কত বড় বা কার কত সাইজ বা দৈর্ঘ্য। প্রোগ্রামিংয়ের ক্ষেত্রেও মাঝেমধ্যে দরকার পড়ে, কোন অ্যারে কত বড় বা সেটার ভিতরে কয়টা উপাদান আছে। হয়তো কয়টা উপাদান আছে, সেটার ওপর নির্ভর করে, তুই কোনো একটা কাজ করবি।
অ্যারের ক্ষেত্রে লেন্থ(length) বা সাইজ জানতে চাওয়া মানে সেই অ্যারের মধ্যে কয়টা উপাদান আছে, আর কিছু না।
ধর, প্রথমে একটি অ্যারে ডিক্লেয়ার করলাম:
const numbers = [1, 5, 66, 11, 45];এইটা ছোট একটা অ্যারে, তাই এখানে কটি উপাদান আছে, সেটা আমরা দেখে বলতে পারি। কিন্তু যদি অনেক অনেক বড় অ্যারে বা অনেক সময় অ্যারের নাম দেখা গেলেও সব মান বা উপাদান দেখা যায় না, তখন কিন্তু গুণে গুণে বলতে পারবি না, কয়টা উপাদান আছে। ঠিক তখন অ্যারের নামের পরে একটি ডট চিহ্ন (.) দিয়ে length লিখলেই সেই অ্যারেতে কতটি উপাদান রয়েছে, তা জানা যাবে।
const numbers = [1, 5, 66, 11, 45];
const size = numbers.length;
console.log(size);অর্থাৎ numbers.length লিখে দিলেই numbers অ্যারেতে কতটি উপাদান রয়েছে, তা দেখাবে।
JavaScript Array Problem for Practice:
- তুই একটা অ্যারে বানালি, যেখানে 71 থেকে 79 পর্যন্ত সংখ্যাগুলো রাখ।
- তোর বাসায় একটা ছোট ফ্রিজ আছে, যেখানে ঠিক 5টা ফল রাখতে পারিস। তুই একটা অ্যারে বানিয়ে তাতে আপেল, কলা, কমলা, আম আর পেয়ারা রাখলি।
- ধর, তুই একদিন বাজারে গিয়েছিলি। তোর ব্যাগে আলু, পেঁয়াজ, বেগুন, মুলা, গাজর, টমেটো, ঢ্যাঁড়স, লাউ, শসা আর পটল 10টা সবজি রাখলি। একটা প্রোগ্রাম লিখে বের কর, ব্যাগে মোট কয়টা সবজি আছে।
- তোর 5টা প্রিয় সিনেমার নাম একটা অ্যারেতে রাখ।
- একটা অ্যারে লিখ, যেটার মধ্যে 11 থেকে 30-এর মধ্যে বিজোড় সংখ্যাগুলো থাকবে।
- তোর চারপাশে তাকিয়ে যে যে কালার দেখতে পারতেছস, সেগুলার একটা অ্যারে বানা। তারপর সেই অ্যারের লেন্থ কনসোল লগ কর।
- কয়েকটা দেশের রাজধানীর নাম নিয়ে একটা অ্যারেতে রাখ এবং তার লেন্থ কনসোল লগ কর।