Size: a a a

2020 August 17

В

Виктория in pro.js
Владимир Гомонов
шо выведет функция?

function a(){
 let a = 777;
   console.log('(0)',a);
 {
   a = 0;
   console.log('(1)',a);
   let a = 5;
   console.log('(2)',a)
 }
   console.log('(3)',a);
}

чур не подглядывать
Ничего
источник

В

Виктория in pro.js
Экзепшен
источник

В

Виктория in pro.js
Будет
источник

ВГ

Владимир Гомонов... in pro.js
угу.
в хроме так.  и это не правильно.  в смысле баг движка
источник

В

Виктория in pro.js
Это мутки с летами
источник

ab

a b in pro.js
Владимир Гомонов
угу.
в хроме так.  и это не правильно.  в смысле баг движка
Почему?
источник

ab

a b in pro.js
Ожидаемое поведение
источник

В

Виктория in pro.js
Владимир Гомонов
угу.
в хроме так.  и это не правильно.  в смысле баг движка
Да да
источник

В

Виктория in pro.js
Помню!
источник

ВГ

Владимир Гомонов... in pro.js
a b
Ожидаемое поведение
обоснуй?
есть "а" в большем скопе,  должна быть доступна, до переобъявления локального синонима
источник

ab

a b in pro.js
У let'а область видимости на уровне блока
источник

ab

a b in pro.js
Переменная всплывает к началу блока
источник

ab

a b in pro.js
Это абсолютно ожидаемое поведение
источник

ВГ

Владимир Гомонов... in pro.js
нет
источник

ab

a b in pro.js
Да
источник

ab

a b in pro.js
Ты в блоке объявил let
источник

ab

a b in pro.js
Это правильное поведение на выходе
источник

ВГ

Владимир Гомонов... in pro.js
что выведет эта функция

function a(){
 let a = 777;
   console.log('(0)',a);
 {
   a = 0;
   console.log('(1)',a);
 }
   console.log('(3)',a);
}

??
источник

ab

a b in pro.js
Владимир Гомонов
что выведет эта функция

function a(){
 let a = 777;
   console.log('(0)',a);
 {
   a = 0;
   console.log('(1)',a);
 }
   console.log('(3)',a);
}

??
Здесь ошибки н ебудет
источник

ВГ

Владимир Гомонов... in pro.js
боишься хаоса?
источник