ডিফল্ট পরামিতি ফাংশনগুলির সাথে কাজ করাকে সম্পূর্ণ সহজ করে তোলে। ডিফল্ট প্যারামিটার ব্যবহার করে, আপনি আপনার ফাংশনগুলিকে বলতে পারেন যে আপনি কোন নির্দিষ্ট না করার ক্ষেত্রে তাদের কোন প্যারামিটারগুলি ব্যবহার করা উচিত। এটি ত্রুটিগুলি এড়াতে সাহায্য করতে পারে এবং আপনার কোডকে আরও পঠনযোগ্য করে তোলে৷
JavaScript ES2015 এ ডিফল্ট প্যারামিটার চালু করেছে। এগুলি আপনাকে পূর্বনির্ধারিত মান সহ একটি ফাংশন আরম্ভ করতে দেয়।
এই নির্দেশিকায়, আমরা ডিফল্ট প্যারামিটারগুলি কী, আপনি কীভাবে সেগুলি ব্যবহার করতে পারেন এবং ডিফল্ট প্যারামিটার হিসাবে আপনি কী ধরণের অভিব্যক্তি নির্দিষ্ট করতে পারেন সে সম্পর্কে কথা বলতে যাচ্ছি। আমরা কয়েকটি উদাহরণের মধ্য দিয়ে যাব যাতে শুরু করার জন্য আপনার প্রয়োজনীয় সমস্ত কোড আপনার কাছে থাকবে।
প্যারামিটার বনাম আর্গুমেন্টস:দ্য ব্যাটেল
আমরা শুরু করার আগে, আসুন নতুনদের কাছ থেকে একটি পুরানো প্রশ্ন সম্বোধন করা যাক:একটি প্যারামিটার এবং একটি আর্গুমেন্টের মধ্যে পার্থক্য কী? জাভাস্ক্রিপ্টে ডিফল্ট প্যারামিটারের সাথে কাজ শুরু করার আগে আপনাকে পার্থক্যটি জানতে হবে।
একটি প্যারামিটার হল একটি নামযুক্ত পরিবর্তনশীল যা আপনি একটি জাভাস্ক্রিপ্ট ফাংশনে পাস করেন। একটি পরামিতি এটিতে একটি সরাসরি মান নির্ধারিত হয় না। আপনি একটি ফাংশন পাস করতে যাচ্ছেন একটি মান জন্য এটি একটি স্থানধারক. এখানে একটি প্যারামিটারের একটি উদাহরণ:
function sayHello(name) { console.log("Hello, " + name); }
এই উদাহরণে, "নাম" হল আমাদের পরামিতি। এটির জন্য নির্ধারিত কোনও মান নেই।
অন্যদিকে, আর্গুমেন্ট হল মান যা একটি ফাংশনে পাস করা হয়:
sayHello("Brett");
আমাদের কোড ফিরে আসে:"হ্যালো, ব্রেট"। "ব্রেট" হল একটি আর্গুমেন্টের একটি উদাহরণ, যা আমরা আমাদের ফাংশনের মধ্য দিয়ে যে মানটি পাস করেছি।
81% অংশগ্রহণকারী বলেছেন যে তারা বুটক্যাম্পে যোগ দেওয়ার পরে তাদের প্রযুক্তিগত কাজের সম্ভাবনা সম্পর্কে আরও আত্মবিশ্বাসী বোধ করেছেন। আজই একটি বুটক্যাম্পের সাথে মিলিত হন৷
৷গড় বুটক্যাম্প গ্র্যাড একটি বুটক্যাম্প শুরু করা থেকে শুরু করে তাদের প্রথম চাকরি খোঁজা পর্যন্ত ক্যারিয়ারের পরিবর্তনে ছয় মাসেরও কম সময় কাটিয়েছে।
একটি ফাংশনকে এর সমস্ত প্যারামিটার উল্লেখ না করে কল করলে একটি ত্রুটি হতে পারে:
sayHello()
আমাদের কোড ফিরে আসে:Hello, undefined
. কারণ আমরা আমাদের ফাংশনে কোনো মান পাস করিনি।
জাভাস্ক্রিপ্ট ডিফল্ট পরামিতি
আমরা একটি ডিফল্ট প্যারামিটার নির্দিষ্ট করে এই সমস্যাটি কাটিয়ে উঠতে পারি। একটি ডিফল্ট প্যারামিটার আপনাকে এমন একটি মান নির্দিষ্ট করতে দেয় যা একটি প্যারামিটারে বরাদ্দ করা হবে যে ক্ষেত্রে কোনোটি নির্দিষ্ট করা নেই।
ডিফল্ট মান অ্যাসাইনমেন্ট অ্যাসাইনমেন্ট অপারেটর ব্যবহার করে:
function sayHello(name="World") { console.log("Hello, " + name); } sayHello();
আমাদের কোড ফিরে আসে:Hello, World
. আপনি দেখতে পারেন যে আমরা এই উদাহরণে একটি যুক্তি নির্দিষ্ট করিনি। পরিবর্তে, আমরা একটি ডিফল্ট ফাংশন প্যারামিটার সেট করেছি। এই ক্ষেত্রে, যেকোনো সময় একটি আর্গুমেন্ট নির্দিষ্ট করা না হলে, আমাদের ফাংশনে "নাম" প্যারামিটারের মান "বিশ্ব" হয়ে যায়।
একটি মান নির্দিষ্ট করা হয়েছে কিনা তা ম্যানুয়ালি চেক করার চেয়ে এটি অনেক সহজ।
একটি ডিফল্ট প্যারামিটারের মান হিসাবে নির্ধারিত কোনো আদিম মান বা বস্তু থাকতে পারে। এখানে বৈধ ডিফল্ট প্যারামিটারের কয়েকটি উদাহরণ রয়েছে:
- স্ট্রিং:"ল্যাটে"
- সংখ্যা:2.40
- বুলিয়ান:সত্য
- অ্যারে:[“স্টিভেন”, মিথ্যা]
- অবজেক্ট:{নাম:"স্টিভেন", loyaltyCustomer:false
একাধিক ডিফল্ট পরামিতি নির্দিষ্ট করা
আপনি একটি ফাংশনে কতগুলি ডিফল্ট প্যারাম নির্দিষ্ট করতে পারেন তার কোনও সীমা নেই। নিম্নলিখিত কোড বিবেচনা করুন:
function createOrder(coffee="Espresso", price=1.75) { console.log("Order: " + coffee); console.log("Price: $" + price); } createOrder();
আমাদের কোড ফিরে আসে:
Order: Espresso Price: $1.75
এই উদাহরণে, আমরা দুটি ডিফল্ট প্যারামিটার নির্দিষ্ট করেছি:কফি এবং মূল্য। আপনি ডিফল্ট এবং নিয়মিত পরামিতিগুলির মধ্যে আপনার নির্দিষ্ট করা প্যারামিটারগুলিও মিশ্রিত করতে পারেন। আপনি যখন এটি করবেন, আপনাকে ডিফল্ট প্যারামিটারের আগে যেকোনো নিয়মিত প্যারামিটার রাখতে হবে। এই উদাহরণটি বিবেচনা করুন:
function createOrder(coffee, price=1.75) { console.log("Order: " + coffee); console.log("Price: $" + price); } createOrder("Cappuccino");
আমাদের কোড ফিরে আসে:
Order: Cappuccino Price: $1.75
আমরা একটি যুক্তি নির্দিষ্ট করেছি:ক্যাপুচিনো। এই কফির নাম যা আমরা অর্ডার করেছি। যেহেতু আমরা এই প্যারামিটারের জন্য একটি ডিফল্ট মান নির্দিষ্ট করিনি, তাই আমাদের একটি আর্গুমেন্ট মান নির্দিষ্ট করতে হবে; অন্যথায়, "অনির্ধারিত" ফেরত দেওয়া হবে।
আমরা ঘোষণা করেছি যে "মূল্য" এর ডিফল্ট মান "1.75" হওয়া উচিত। যেহেতু আমরা এই ডিফল্ট প্যারামিটার সেট করি, যে কোনো সময় আমরা কোনো মূল্য নির্দিষ্ট না করলে এটি স্বয়ংক্রিয়ভাবে "1.75"-এ সেট হয়ে যাবে।
এটি গুরুত্বপূর্ণ যে আপনি আপনার ডিফল্ট প্যারামিটারের আগে যেকোনো নিয়মিত পরামিতি নির্দিষ্ট করুন। এটি কারণ নিয়মিত প্যারামিটারের মানগুলি আপনার ফাংশন কলে উপস্থিত হওয়ার ক্রম অনুসারে নির্ধারিত হয়৷
ডিফল্ট প্যারামিটার হিসেবে কাজ করে
একটি ফাংশন একটি ডিফল্ট পরামিতি হিসাবে সেট করা যেতে পারে। আপনি যে মানটি একটি ফাংশনে পাস করতে চান তা অন্য একটি ফাংশন ব্যবহার করে গণনা করা হলে এটি কার্যকর।
নিম্নলিখিত কোড স্নিপেটে, আমরা একটি ফাংশন তৈরি করতে যাচ্ছি যা একটি ভিডিও গেমে একটি নতুন প্লেয়ারের জন্য একটি ছদ্ম-এলোমেলো ব্যবহারকারীর নাম তৈরি করে:
function getRandomUsername() { var number = Math.floor(Math.random() * 100); var username_list = ['Crash', 'Steve', 'Lucinda', 'Ellie']; var username = username_list[Math.floor(Math.random() * username_list.length)]; var final_username = username + number; return final_username; } function createUser(username = getRandomUsername(), email) { console.log('Your username is: ' + username); console.log('Your email is: ' + email); } createUser('[email protected]');
আমাদের কোড ফিরে আসে:
Your username is: Crash87 Your email is: [email protected]
আসুন আমাদের কোড ভাঙ্গা যাক।
আমরা getRandomUsername()
নামে একটি ফাংশন ঘোষণা করেছি যা একটি ছদ্ম-এলোমেলো ব্যবহারকারীর নাম তৈরি করে। এটি একটি এলোমেলো নম্বর তৈরি করে এবং চারটি ব্যবহারকারীর নামের তালিকা থেকে এলোমেলোভাবে একটি ব্যবহারকারীর নাম নির্বাচন করে কাজ করে। র্যান্ডম নম্বরটি তারপর ব্যবহারকারীর নামের শেষে যোগ করা হয়। এই ফাংশনটি নতুন তৈরি হওয়া ব্যবহারকারীর নাম প্রদান করে
আমাদের createUser
-এ ফাংশন, আমরা "ব্যবহারকারীর নাম" প্যারামিটারের ডিফল্ট মান আমাদের getRandomUsername()
এর সমান সেট করেছি ফাংশন এর মানে হল যে যখনই আমরা আমাদের নতুন ব্যবহারকারীর জন্য একটি ব্যবহারকারীর নাম নির্দিষ্ট করি না, তখন একটি এলোমেলো একটি তৈরি হয়।
আমাদের কোড তারপর ব্যবহারকারীর ব্যবহারকারীর নাম এবং তাদের ইমেল ঠিকানা কনসোলে প্রিন্ট করে।
উপসংহার
ডিফল্ট প্যারামিটার আপনাকে একটি মান সেট করতে দেয় যা একটি প্যারামিটারে বরাদ্দ করা হবে যদি একটি ফাংশন কলে একটি আর্গুমেন্ট হিসাবে নির্দিষ্ট করা না থাকে। ডিফল্ট পরামিতিগুলি আপনার ফাংশনগুলিকে পড়তে সহজ করতে এবং কোনও ফাংশনে একটি মান পাস না হলে যে সমস্যাগুলি দেখা দিতে পারে তা হ্রাস করতে সহায়তা করে।
এখন আপনি একজন বিশেষজ্ঞের মতো JavaScript ডিফল্ট প্যারামিটারের সাথে কাজ শুরু করতে প্রস্তুত!