হোইস্টিং কী?
যখন আপনি একটি জাভাস্ক্রিপ্ট ভেরিয়েবল ঘোষণার আগে ব্যবহার করতে পারেন, তখন এই টেকনিককে হোইস্টিং বলা হয়। পার্সার ফাংশনটি সম্পূর্ণ পড়ে তারপর রান করে।
উদাহরণ
points = 200; var points;
উপরোক্ত কোড নিচের কোডের মতোই কাজ করে:
var points; points = 200;
গভীরে হোইস্টিং
console.log(x); // undefined (এরর নয়!) var x = 5; console.log(y); // ReferenceError: Cannot access 'y' before initialization let y = 10; console.log(z); // ReferenceError const z = 15;
ফাংশন হোইস্টিং
// ফাংশন ডিক্লারেশন - পুরোাই হোইস্ট হয়
myFunc(); // কাজ করে!
function myFunc() {
console.log("Hello");
}
// ফাংশন এক্সপ্রেশন - শুধু ভেরিয়েবল হোইস্ট হয়
myFunc2(); // TypeError: myFunc2 is not a function
var myFunc2 = function() {
console.log("Hello");
};