জাভাস্ক্রিপ্টে ফাংশনের টাইপ কিভাবে চেক করবেন

নিচের সমস্যাগুলোতে আপনাকে নির্ধারণ করতে হবে ফাংশনটি Function Declaration না Function Expression হিসেবে সংজ্ঞায়িত।

সাধারণ ক্ষেত্রে এটি চাক্ষুষভাবে নির্ণয় করা কঠিন নয়। কিন্তু কিভাবে যাচাই করবেন যে আপনি সঠিকভাবে করেছেন? Function Declaration এবং Function Expression-এর মধ্যে পার্থক্য ব্যবহার করুন: প্রথমটি তাদের সংজ্ঞার উপরে ডাকা যেতে পারে, কিন্তু দ্বিতীয়টি - পারে না।

ধরুন আমাদের কাছে এমন একটি ফাংশন আছে:

javascriptlet test = function() {
  console.log('!');
}

এর সংজ্ঞার আগেই এই ফাংশনটি অ্যাক্সেস করি:

javascripttest(); // কনসোলে ত্রুটি দেখাবে, অর্থাৎ Function Expression

let test = function() {
  console.log('!');
}

এখানে আরেকটি উদাহরণ:

javascriptfunc(); // '!' দেখাবে, অর্থাৎ Function Declaration

function func() {
  console.log('!');
}

আমাদের ফাংশনের সামনে একটি প্লাস চিহ্ন রাখি:

javascriptfunc(); // কনসোলে ত্রুটি দেখাবে, অর্থাৎ Function Expression

+function func() {
  console.log('!');
}

যেহেতু উপরের ফাংশনটি একটি Function Expression এবং এটি কোনো ভেরিয়েবলে অ্যাসাইন করা নেই, সেহেতু এটিকে কোনোভাবেই ডাকা যাবে না, কারণ func নামে এটি অনুপলব্ধ থাকবে।

Задание 1

নির্ধারণ করুন, উপস্থাপিত ফাংশনটি Function Declaration না Function Expression:

javascriptlet test = function func() {
  console.log('!');
}
Задание 2

নির্ধারণ করুন, উপস্থাপিত ফাংশনটি Function Declaration না Function Expression:

javascriptconsole.log(
  function func() {
    console.log('!');
  }
);
Задание 3

নির্ধারণ করুন, উপস্থাপিত ফাংশনটি Function Declaration না Function Expression:

javascript+function func() {
  console.log('!');
}
Задание 4

নির্ধারণ করুন, উপস্থাপিত ফাংশনটি Function Declaration না Function Expression:

javascriptfunction func() {
  console.log('!');
}