Разбор пытанняў з рэальных сумоўяў JS - Пераменныя.
Пытанне:
Пералічыць усе спосабы аб'яўлення пераменных у JS. У чым паміж імі розніца.
Адказ:
Існуюць 3 спосабы аб'яўлення пераменных у JS - var
, let
, const
.
var
-
Найстарэйшы спросаб аб'яўлення пераменных.
-
Мае глабальную вобласць бачнасці (калі пераменная аб'яўлена па-за межамі функцыі) і функцыянальную (пераменная аб'яўлена ў межах функцыі).
-
Есць hoisting, да пераменнай можна звярнуцца да ае аб'яўлення. У гэтым разе пераменная будзе мець значэнне
undefined
. -
Калі ў кодзе аб'явіць яшчэ адну пераменную з такім жа імем, - памылкі не будзе, другое аб'яўленне праігнаруецца.
let і const
-
З'явіліся ў ES6.
-
Маюць глабальную і блокавую вобласць бачнасці.
-
let
- значэнне можна перавызначыць,const
- не (толькі калі гэта не уласцівасць аб'екта). -
Таксама есць hoisting, але, у адрозненне ад
var
, пераменныяlet
іconst
трапляюць у так званую temporary dead zone (часовую мертвую зону) і недасяжныя да моманту іх аб'яўлення. Калі ў кодзе звярнуцца да такой пераменнай, будзе памылка тыпа Reference error. -
Другое аб'яўленне пераменнай з такім жа імем у той жа зоне бачнасці таксама выклікае памылку.
Каментары
(Каб даслаць каментар залагуйцеся ў свой уліковы запіс)