ildar-k
1/21/2020 - 10:57 AM

Hoisting

// HOISTING
// Hoisting ehk upitamine on js omadus, mis tõstab ntks mutuujate v fn'de väärtusi ajutiselt üles, et ära hoida errorit.
// Näide
// Antud juhul on järjekord vale, kuna kutsun muutujat esile enne kui see on defineeritud, kuid vaatamata sellele ei anna browser meile errori vaid väärtuse undefined. Meile nähtamatult paneb JS muutuja ilma väärtuseta console log'i ette(hoisting). Seetõttu antakse teateks undefined. Küll aga see töötab ainult var' muutujaga. Let ja const seda ei luba teha. 
console.log(loom);
var loom = 'pesukaru';

// Ka fn'de puhul toimib hoisting, kus fn howl defineerimise koopia pannakse enne selle kutsumist
howl();
function howl(){
  console.log('AAAAAAAAAUUUUUUUUUU!');
}