ES6 তে ডিফল্ট প্যারামিটারস এবং ডেস্ট্রাকচারিং দুটি শক্তিশালী ফিচার যা ফাংশন এবং অবজেক্টের ব্যবহারের সময় কোডের গঠন এবং পাঠযোগ্যতা বৃদ্ধি করতে সাহায্য করে। এই দুটি ফিচার একত্রে ব্যবহার করলে কোড আরও বেশি কার্যকরী ও সহজ হতে পারে।
ডিফল্ট প্যারামিটারস (Default Parameters)
ডিফল্ট প্যারামিটারস ব্যবহারের মাধ্যমে আপনি একটি ফাংশনের প্যারামিটারগুলির জন্য একটি ডিফল্ট মান নির্ধারণ করতে পারেন। যদি কোনো প্যারামিটার প্রদান না করা হয়, তাহলে ঐ প্যারামিটারটির ডিফল্ট মান স্বয়ংক্রিয়ভাবে ব্যবহৃত হবে।
উদাহরণ:
function greet(name = "Guest") {
console.log(`Hello, ${name}!`);
}
greet("John"); // "Hello, John!"
greet(); // "Hello, Guest!"
এখানে, যদি greet ফাংশনে প্যারামিটার হিসেবে name প্রদান না করা হয়, তাহলে "Guest" ডিফল্ট মান হিসেবে নেওয়া হবে।
ডেস্ট্রাকচারিং (Destructuring)
ডেস্ট্রাকচারিং ES6 এর একটি ফিচার যা অবজেক্ট বা অ্যারে থেকে ডেটা বের করে ভ্যারিয়েবলে সংরক্ষণ করতে সাহায্য করে। এটি কোডকে আরও পরিষ্কার এবং সংক্ষিপ্ত করে।
অবজেক্ট ডেস্ট্রাকচারিং উদাহরণ:
const person = {
name: "John",
age: 30,
city: "New York"
};
const { name, age } = person;
console.log(name); // "John"
console.log(age); // 30
এখানে, অবজেক্টের name এবং age প্রপার্টিগুলি সরাসরি ভ্যারিয়েবলে ডেস্ট্রাক্ট করে নেওয়া হয়েছে।
অ্যারে ডেস্ট্রাকচারিং উদাহরণ:
const numbers = [10, 20, 30];
const [first, second] = numbers;
console.log(first); // 10
console.log(second); // 20
এখানে, অ্যারের প্রথম দুইটি মান ভ্যারিয়েবলে ডেস্ট্রাক্ট করে সংরক্ষণ করা হয়েছে।
ডিফল্ট প্যারামিটারস এবং ডেস্ট্রাকচারিং একত্রে ব্যবহার
যখন আপনি ডিফল্ট প্যারামিটারস এবং ডেস্ট্রাকচারিং একত্রে ব্যবহার করেন, তখন আপনি ফাংশন প্যারামিটার হিসেবে অবজেক্ট বা অ্যারে ব্যবহার করে তার ভ্যালুগুলিকে ডেস্ট্রাক্ট করতে পারেন এবং সেই ভ্যালুগুলির জন্য ডিফল্ট মানও নির্ধারণ করতে পারেন।
অবজেক্ট ডেস্ট্রাকচারিং এবং ডিফল্ট প্যারামিটারস উদাহরণ:
function greet({ name = "Guest", age = 25 } = {}) {
console.log(`Hello, ${name}! You are ${age} years old.`);
}
greet({ name: "John", age: 30 }); // "Hello, John! You are 30 years old."
greet({ name: "Alice" }); // "Hello, Alice! You are 25 years old."
greet(); // "Hello, Guest! You are 25 years old."
এখানে, ফাংশনের প্যারামিটার হিসেবে একটি অবজেক্ট নেওয়া হয়েছে। অবজেক্টের name এবং age প্রপার্টি ডেস্ট্রাক্ট করে নেওয়া হয়েছে এবং তাদের জন্য ডিফল্ট মানও দেওয়া হয়েছে। যদি কোনো প্রপার্টি পাওয়া না যায়, তাহলে ডিফল্ট মান ব্যবহার হবে।
অ্যারে ডেস্ট্রাকচারিং এবং ডিফল্ট প্যারামিটারস উদাহরণ:
function printNumbers([first = 1, second = 2] = []) {
console.log(`First: ${first}, Second: ${second}`);
}
printNumbers([10, 20]); // "First: 10, Second: 20"
printNumbers([5]); // "First: 5, Second: 2"
printNumbers(); // "First: 1, Second: 2"
এখানে, অ্যারের প্রথম দুটি মান ডেস্ট্রাক্ট করা হয়েছে এবং তাদের জন্য ডিফল্ট মান দেওয়া হয়েছে। যদি অ্যারে প্রদান না করা হয় বা কোন মান না পাওয়া যায়, তাহলে ডিফল্ট মান ব্যবহার হবে।
উপসংহার
ডিফল্ট প্যারামিটারস এবং ডেস্ট্রাকচারিং একত্রে ব্যবহার করলে কোডের কার্যকারিতা এবং পাঠযোগ্যতা অনেক উন্নত হয়। আপনি যখন কোনো অবজেক্ট বা অ্যারের ডেটা ডেস্ট্রাক্ট করেন এবং সাথে সাথে ডিফল্ট মান সেট করেন, তখন আপনি ফাংশনের ভিতরে প্রয়োজনীয় ডেটা সহজেই ব্যবহার করতে পারেন, আর কোনো ডেটা না পাওয়া গেলে ডিফল্ট মান ব্যবহার করতে পারবেন। এই ফিচারগুলো কোডের গঠনকে আরও সুন্দর ও কার্যকরী করে তোলে।