SATT ACADEMY

New to Satt Academy? Create an account


or

Log in with Google Account

Academy
Please, contribute to add content into জাভাস্ক্রিপ্ট আপডেট ভার্সন (JS Update Version).
Content
Please, contribute to add content into JS 2009 (ES5).
Content
Please, contribute to add content into JS 2015 (ES6).
Content
Please, contribute to add content into JS 2016.
Content
Please, contribute to add content into JS 2017.
Content
Please, contribute to add content into JS 2018.
Content
Please, contribute to add content into JS 2019.
Content
Please, contribute to add content into JS 2020.
Content
Please, contribute to add content into JS 2021/2022.
Content

জাভাস্ক্রিপ্ট ফাংশন function কি-ওয়ার্ড দ্বারা ডিফাইন করা হয়।

আপনি ফাংশন ডিক্লেয়ারেশন অথবা ফাংশন এক্সপ্রেশন ব্যবহার করতে পারেন।


ফাংশন ডিক্লেয়ারেশন

ফাংশন ডিক্লেয়ারেশনের গঠনপ্রণালীঃ

kt_satt_skill_example_id=1171

ফাংশনকে ডিক্লেয়ার করলেই ইহা এক্সিকিউট হয় না, ফাংশনকে কল করলে ইহা এক্সিকিউট হয়ঃ

kt_satt_skill_example_id=1173

জাভাস্ক্রিপ্টের সম্পাদনযোগ্য স্টেটমেন্টগুলোকে আলাদা করার জন্য সেমিকোলন(;) ব্যবহার করা হয়।
ফাংশন যেহেতু সম্পাদনযোগ্য স্টেটমেন্ট নয় তাই এর শেষে সেমিকোলন ব্যবহার করতে হয় না।


ফাংশন এক্সপ্রেশন

জাভাস্ক্রিপ্ট ফাংশনকে এক্সপ্রেশনের মাধ্যমেও ডিফাইন করা যায়।

ফাংশন এক্সপ্রেশনকে একটি ভ্যারিয়েবলের মধ্যে রাখা হয় এবং পরবর্তীতে ভ্যারিয়েবলকে ফাংশন হিসেবে ব্যবহার করা হয়ঃ

kt_satt_skill_example_id=1175

kt_satt_skill_example_id=1177

উপরের ফাংশনটি anonymous(নামহীন) ফাংশন।
যেসকল ফাংশনকে ভ্যারিয়েবলে রাখা হয়, তাদের নামের প্রয়োজন হয়না। তাদেরকে সবসময় ভ্যারিয়েবলের নাম দ্বারা কল করা হয়।

উপরের ফাংশনটি সেমিকোলন দ্বারা শেষ হয়েছে। কারন ইহা সম্পাদনযোগ্য স্টেটমেন্ট।


ফাংশন হয়েস্টিং(Hoisting)

এই টিউটোরিয়ালের শুরুতে আপনি হয়েস্টিং(Hoisting) সম্পর্কে জানতে পেরেছেন।

একটি স্কোপের ডিক্লেয়ারেশনকে সবার উপরে নিয়ে যাওয়াই হয়েস্টিং। এটি জাভাস্ক্রিপ্টের ডিফল্ট বৈশিষ্ট্য।

হয়েস্টিং শুধুমাত্র ভ্যারিয়েবল ও ফাংশন ডিক্লেয়ারেশনের ক্ষেত্রে প্রযোজ্য। এই কারনে,ফাংশন ডিক্লেয়ারেশনের পূর্বেই ফাংশনকে কল করা যায়ঃ

kt_satt_skill_example_id=1178

ফাংশন এক্সপ্রেশন হয়েস্টিং-এর অধীনে পড়ে না।


সেলফ ইনভোকিং(self-invoking) ফাংশন

ফাংশন এক্সপ্রেশনকে সেলফ ইনভোকিং ফাংশন করা যায়। ফাংশন ডিক্লেয়ারকে সেলফ ইনভোকিং ফাংশন করা যায় না।

সেলফ ইনভোকিং এক্সপ্রেশন কল করা ছাড়াই স্বয়ংক্রিয়ভাবে কাজ করে।

সেলফ ইনভোকিং ফাংশনের গঠনপ্রণালীঃ

kt_satt_skill_example_id=1179

kt_satt_skill_example_id=1181

জাভাস্ক্রিপ্টের ভাষায় একে self-invoking anonymous function বলা হয়।


ফাংশন ভ্যালু হিসেবেও ব্যবহার হয়

জাভাস্ক্রিপ্ট ফাংশন ভ্যালু হিসেবেও ব্যবহার হতে পারেঃ

kt_satt_skill_example_id=1183

জাভাস্ক্রিপ্ট ফাংশন এক্সপ্রেশন হিসেবেও ব্যবহার হতে পারেঃ

kt_satt_skill_example_id=1185

ফাংশন হলো অবজেক্ট

জাভাস্ক্রিপ্টের typeof অপারেটর "function" কে ফাংশন হিসেবে রিটার্ন করে।

কিন্তু অবজেক্ট হিসেবে ফাংশনকে ভালোভাবে বর্ণনা করা যায়।

জাভাস্ক্রিপ্ট ফাংশনের প্রোপার্টি এবং মেথড উভয়ই রয়েছে।

ফাংশনকে কল করা হলে কতটি আর্গুমেন্ট থাকে arguments.length প্রোপার্টি ফাংশনের আর্গুমেন্টের সংখ্যা রিটার্ন করেঃ

kt_satt_skill_example_id=1188

toString() মেথডটি ফাংশনকে স্ট্রিং হিসেবে রিটার্ন করেঃ

kt_satt_skill_example_id=1191

ফাংশনকে অবজেক্টের প্রোপার্টি হিসেবে ডিফাইন করলে তাকে অবজেক্টের মেথড বলা হয়।
নতুন অবজেক্ট তৈরি করার জন্য ব্যবহার করা হলে ফাংশনকে অবজেক্ট কনস্ট্রাক্টর বলা হয়।

Content added || updated By

জাভাস্ক্রিপ্ট ফাংশন তার প্যারামিটারের ভ্যালু(আর্গুমেন্ট) যাচাই করে না।


ফাংশন প্যারামিটার এবং আর্গুমেন্ট

এই টিউটোরিয়ালের পূর্বে আপনি ফাংশনের প্যারামিটার সম্পর্কে জানতে পেরেছেন।

kt_satt_skill_example_id=1194

ফাংশন ডেফিনেশনে প্রথম বন্ধনীর মধ্যে লেখা নামগুলো হলো ফাংশন প্যারামিটার।

ফাংশনকে কল করলে প্রথম বন্ধনীর মধ্যে প্যারামিটারের জায়গাতে যে ভ্যালু দেওয়া হয় তাকেই ফাংশন আর্গুমেন্ট বলা হয়।


প্যারামিটারের নিয়মাবলী

জাভাস্ক্রিপ্ট ফাংশনে প্যারামিটারের ডাটা টাইপ নির্দেশ করতে হয় না।

জাভাস্ক্রিপ্ট ফাংশন আর্গুমেন্টের টাইপ চেক করে না।

জাভাস্ক্রিপ্ট ফাংশন কয়টি আর্গুমেন্ট গ্রহন করা হয়েছে তা পরীক্ষা করে না।


প্যারামিটার ডিফল্ট

যদি ফাংশনকে প্যারামিটারের ভ্যালু(আর্গুমেন্ট) দেওয়া ছাড়া কল করা হয়, তাহলে এর ভ্যালু undefined সেট হবে।

মাঝে মধ্যে এটি গ্রহনযোগ্য, কিন্তু প্যারামিটারের একটি ডিফল্ট ভ্যালু সেট করে দেওয়া ভালোঃ

kt_satt_skill_example_id=1195

যদি একটি ফাংশনকে নির্ধারিত আর্গুমেন্টের চেয়ে বেশি আর্গুমেন্ট দ্বারা কল করা হয় তবে অতিরিক্ত আর্গুমেন্টকে আর্গুমেন্ট অবজেক্ট দ্বারা এক্সেস করা যাবে।


আর্গুমেন্ট অবজেক্ট

আর্গুমেন্ট অবজেক্ট হলো জাভাস্ক্রিপ্ট ফাংশনের একটি বিল্ট-ইন অবজেক্ট।

আর্গুমেন্ট অবজেক্ট ফাংশনকে কল করার সময় যে আর্গুমেন্ট দেওয়া হয় তার একটি অ্যারে তৈরি করে।

এই পদ্ধতিতে আপনি খুব সহজেই একটি ফাংশন দ্বারা একটি সংখ্যার লিস্ট থেকে সর্বোচ্চ ভ্যালু বের করতে পারবেনঃ

kt_satt_skill_example_id=1196

অথবা সকল ভ্যালু যোগ করার জন্য একটি ফাংশন তৈরি করতে পারেনঃ

kt_satt_skill_example_id=1197

Content added By