TGViewer
As For JS As For JS @asforjavascript · 3.07K subscribers
Post #666 2.84K
Краткое ИГОГО тезисами:

1. Современный V8 вынужден тратить больше ресурсов на исполнения кода для let/const declaration.

2. Возникновение этих издержек СТРОГО связано с использованием идентификаторов, заявленных при помощи let/const в функциональном окружении, которое отличается от того где они используются.

3. Окружение создаваемое Block Statement (Declarative Environment) не создает лишних издержек. Все сказанное касается ТОЛЬКО функционального окружения.

4. let/const declaration не имеет никаких отличий от var в том случае, если заявленный идентификатор используется ТОЛЬКО в том же функциональном окружении где и был объявлен идентификатор.

5. var подобных издержек не имеет. То есть производительность let/const всегда либо равна variable statement либо хуже.

6. Для var существует одно исключение связанное с объявлением идентификаторов в глобальном окружении. Где var покажет худшую в сравнении с let/const производительность.

7. Не забывайте, что function declaration согласно спецификации, выполняет те же шаги что и variable statement. Из чего следует, что если вы используете function declaration в Global Environment - вы создаете ненужную нагрузку на Agent исполняющий ваш код.

8. На текущий момент (начало 2024), let/const медленнее var на 7% +-2;
На конец 2022 года, эта цифра была на уровне 15% +-5

9. Существуют еще дополнительные издержки возникающие на стадии Static Semantics для анализа кода с Let и Const. Все что описано ваше, касается только RunTime Semantics


Дополнительные детали в документе от инженеров V8
Google Docs Ignition TDZ check elision Ignition TDZ check elision Attention - this doc is public and shared with the world! Contact: syg@ Date: LGTMs needed Name Write (not) LGTM in this row verwaest@ lgtm leszeks@ lgtm Someone else familiar with TDZ? ... Abstract Ignition can elide additional…
  • 🔥 37
  • 👍 5
  • 😍 2
More from @asforjavascript
  1. Oct 13, 2026Тимур Шемсединов раскопал в записях еще один эфир второго в мире JS радио. Было это недели…
  2. Oct 11, 2026Гениальный Кирилл Львович Масленников о темной материи полтора часа кайфа https://youtu.be…
  3. Oct 10, 2026Два дня назад, в возрасте 90 лет умерла Маргарет Гамильтон. В один из критических моментов…
  4. Oct 9, 2026Какие несоответствия тексту песни, вы видите в клипе? Я нашел пока три. https://www.youtub…
  5. Oct 9, 2026Пусть повисит до утра. Потом удалю https://www.youtube.com/watch?v=qVs4a7K42eE&
  6. Oct 9, 2026Первое видео, где автор пытался седелать его так, чтобы все подумали на ИИ
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →