Есть ли польза от подъема? - PullRequest
0 голосов
/ 09 июля 2020

Я хотел бы узнать, в чем заключаются преимущества подъема, если они есть ... Я искал ответ, но они только объясняют, что это такое, я хотел бы знать, есть ли реальное преимущество, которое я могу использовать для написания лучший код.

Кажется, что с использованием const и let, javascript фактически заставляет избегать подъема, не говоря уже о том, что некоторые линтеры фактически заставляют объявлять функции и переменные вверху, откуда они ' перезвонил.

Ответы [ 2 ]

3 голосов
/ 09 июля 2020

Основное преимущество подъема состоит в том, что функции не нужно объявлять в определенном c порядке для правильной работы. Интерпретатор выполняет передачу функции кода и находит все объявления функций внутри этой функции и делает их доступными для кода в любом месте области (поднимая их), независимо от того, находится ли код, ссылающийся на функции, до или после того, где расположены объявления функций. . Это также позволяет A вызывать B и B вызывать A, не сталкиваясь с проблемами упорядочивания объявлений.

Поднятие переменных теперь редко используется, поскольку у нас есть const и let, которые имеют блочную область видимости и не могут использоваться перед объявлением. Так что теперь подъем в основном полезен для объявления функций.

1 голос
/ 03 сентября 2020

В JavaScript подъем - это поведение по умолчанию, при котором все объявления перемещаются в верхнюю часть области перед выполнением кода. По сути, это дает нам преимущество в том, что независимо от того, где объявлены функции и переменные, они перемещаются в верхнюю часть своей области видимости, независимо от того, является ли их область глобальной или локальной. Это позволяет нам вызывать функции еще до того, как записать их в наш код.

Примечание: JavaScript поднимает только объявления, но не инициализации.

...