Var срещу Let в Javascript

Много разработчици, които са писали код на Javascript, не се интересуват от големите разлики в използването между Var & Let и може би дори не знаят.

Какви са разликите между Let и Var?

По принцип това е един от най-задаваните въпроси на интервютата за работа, дори сред самите разработчици.

var и let се използват за деклариране на променлива в javascript, но разликата между тях е, че var е с функционален обхват, а let е с блоков обхват

  • Така че нека дефинираме разликите, като дефинираме как те се държат различно в много роли:

Обхват:

*Преди ES6 (2015) JavaScript имаше само Глобален обхват и Обхват на функцията.

* ES6въведе ключовата дума let, която дефинира Block Scope в JavaScript

* Това означава, че променливите, дефинирани чрез letвътре в {} блокне могат да бъдат достъпни извън блока.

* Докато променливите, дефинирани с помощта на var вътре в {} блок, могат да бъдат достъпни извън блока.

Повдигане:

  • Променливите са дефинирани с varса Повдигнатиотгоре и могат да бъдат инициализирани по всяко време, което означава, че можете да декларирате променливата, преди да е дефинирана, защото var ще отиде в горната част на файла.
  • Докато променливите, дефинирани с let, също се издигат до върха, но не се инициализират, така че ако използвате променливата let, преди да е инициализирана, това ще даде Референтна грешка.

Глобален обект:

На най-високо ниво let, за разлика от var, не създава свойство на глобалния обект:

Повторна декларация:

Променливите, дефинирани с let, не могат да бъдат предекларирани, така че не можете случайно да предекларирате променливите, дефинирани чрез ключовата дума let.

Когато променливите, дефинирани с променлива, могат да бъдат предекларирани.

Вижте примера:

така че както виждате в примера по-горе, създадохме променливи с помощта на let и var, след това ги декларирахме отново и ги регистрирахме в конзолата и резултатът: променливата, декларирана с помощта на letкоето е Jack не се промени, докато променливата, декларирана с помощта на varкоято еJohnсе променя след декларирането и става Johnny.

В края на статията бих искал да ви благодаря за вниманието и се надявам, че това ще ви помогне да разберете по-добре основните разлики между ключовите думи let& var.

Не забравяйте да ме последвате в Twitter, където туитвам относно разработването на игри и програмирането като цяло →Twitter
И моя Github акаунт →Github