জাভাস্ক্রিপ্টে যেকোনো নেস্টিং লেভেল
ফাংশন কল এইভাবেও হতে পারে: func()()()
এবং func()()()() - এবং এইভাবে অসীম পর্যন্ত।
এর জন্য প্রয়োজন যে ভিতরের ফাংশনটিও একটি ফাংশন রিটার্ন করবে, সেটি আরেকটি ফাংশন রিটার্ন করবে এবং এইভাবে চলতে থাকবে। এখানে একটি উদাহরণ:
function func() {
return function() {
return function() {
return '!';
};
};
}
console.log( func()()() ); // আউটপুট হবে '!'
একটি ফাংশন func তৈরি করুন, যাকে
এভাবে কল করলে: func()()()()(), রিটার্ন করবে
'!'।