হোস্টিং হল একটি জাভাস্ক্রিপ্ট কৌশল যা কোড এক্সিকিউশন শুরু হওয়ার আগে ভেরিয়েবল এবং ফাংশন ডিক্লারেশনকে তাদের সুযোগের শীর্ষে নিয়ে যায়। একটি সুযোগের মধ্যে যেখানেই ফাংশন বা ভেরিয়েবল ঘোষণা করা হোক না কেন, সেগুলিকে তাদের সুযোগের শীর্ষে নিয়ে যাওয়া হয়৷
মনে রাখবেন যে অ্যাসাইনমেন্টগুলি যথাস্থানে থাকা অবস্থায় উত্তোলন শুধুমাত্র ঘোষণাকে স্থানান্তরিত করে।
উদাহরণ
console.log(functionBelow("Hello")); function functionBelow(greet) { return `${greet} world`; } console.log(functionBelow("Hi"));
আউটপুট
Hello world Hi world
উল্লেখ্য যে ফাংশন ঘোষণাটি কল করার পরে ছিল কিন্তু এখনও বলা হয়েছিল। ফাংশন উত্তোলনের কারণে এটি সম্ভব হয়েছিল।
এছাড়াও মনে রাখবেন যে আপনি যখন ভেরিয়েবলের মত ফাংশন বরাদ্দ করেন তখন এটি কাজ করে না।
console.log(functionBelow("Hello")); var functionBelow = function(greet) { return `${greet} world`; } console.log(functionBelow("Hi"));
এটি একটি ত্রুটির সাথে ব্যর্থ হবে:functionBelow একটি ফাংশন নয়
আপনি var মুছে ফেললে, এটি ত্রুটির সাথে ব্যর্থ হবে:নিচে ফাংশন সংজ্ঞায়িত করা হয়নি
উল্লেখ্য যে যখন এটি var দিয়ে ঘোষণা করা হয়েছিল, তখন এটি প্রেক্ষাপটে একটি পরিবর্তনশীল হিসাবে উত্তোলন করা হয়েছিল। কিন্তু তা এখনও অবধারিতই রয়ে গেছে। এটি পরিবর্তনশীল উত্তোলন হিসাবে পরিচিত। এই সম্পত্তির কারণে, বেনামী এবং তীর ফাংশন জাভাস্ক্রিপ্টে কখনও উত্তোলন করা হয় না।