Кирилл Кучеров
var
let
const
let отличается от const
var. Вообще. Серьезно.const, если не получается (пример -
цикл for) - let.
function foo(max) {
for (var i = 0; i < max; i++) {
setTimeout(function() {console.log(i + 1)}, i * 1000);
}
}
foo(3);
function foo(max) {
for (let i = 0; i < max; i++) {
setTimeout(function() {console.log(i + 1)}, i * 1000);
}
}
foo(3);
foo();
function foo() {}
console.log(v); // ???
var v = 345;
console.log(v); // ???
window
window, во второй - исполняет
const a = 10;const b = 5.5;typeof a === typeof b; // ???typeof typeof a; // ???
const s1 = 'string';const s2 = "string";const s3 = `${a} + ${b} = ${a + b}`;console.log(parseInt('100500'));console.log(parseFloat('100.500'));console.log(parseInt('10e5'));+'199';+'-1.99';+'1e4';Number('1e4');+'45jjf'; // NaN, parseInt('45jjf') => 45 !!!+'jjf34'; // NaN
typeof NaN; // ???parseInt(parseInt); // ???
const b1 = true || false;console.log(!!a);console.log(!!0);console.log(!!NaN);console.log(!!'');console.log(!!null);console.log(!!undefined);
const obj = {a: 10, 'b c': 11};
console.log(obj.a);
console.log(obj['b c']);
console.log(obj.foo);
obj.bar = 10;
delete obj.bar;
console.log(obj.bar);
obj.baz = function baz() {console.log('Hello')};
obj.baz();
function foo() {
console.log('hello');
}
const bar = foo;
bar();