const length = 4;
const numbers = [];
for (var i = 0; i < length; i++); { //<------- attenzione al ;
numbers.push(i + 1);
}
console.log(numbers); //[5]
//A causa del ; viene prima eseguito quanto nelle () e poi quanto contenuto nel blocco {}
//Perciò quando entriamo nel blocco {} il ciclo è già finito e i vale 4 perciò pushiamo
//dentro l'array una sola volta 4 + 1
var variable = 10;
(()=> {
console.log(variable);
let variable = 20;
console.log(variable);
})();
//Il primo console.log causa Uncaught ReferenceError: Cannot access 'variable' before initialization
//perchè dentro la IIFE non abbiamo accesso alle variabili dichiarate fuori
let snack = 'Meow Mix';
function getFood(food) {
if (food) {
let snack = 'Friskies';
return snack;
}
return snack;
}
getFood(false); // 'Meow Mix' (se passiamo true invece enriamo nell'if e ritorniamo 'Friskies')
var array = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
array['length'] = 4;
array.push(10);
console.log(array); //[0, 1, 2, 3, 10]