The Curious Case of Undeclared Global Variables in Javascript

How does your usual variable declaration look like? Like this, right? const INTEREST_RATE = 20; // global const declaration and initialization var principleAmount; // global var declaration function calculateInterest() { principleAmount = 10000; // global var value assignment var timePeriod = 1; // local function scoped var declaration and initialization return principleAmount*INTEREST_RATE*timePeriod/100; } Do you know the difference between the above and below code snippet? const INTEREST_RATE = 20; // global const declaration and initialization var principleAmount; // global var declaration function calculateInterest() { principleAmount = 10000; // global var value assignment timePeriod = 1; // <-- GLOBAL variable initialization without declaration return principleAmount*INTEREST_RATE*timePeriod/100; } Did you notice that var is missing behind timePeriod?...

August 2, 2023 · 3 min · 566 words · Harsh Ankur