PROG_WAY_BLOG Telegram 88
А в чём все таки разница между var, let и const?

Начал писать другой пост и понял, что мне не хватает описания этой темы, поэтому слегка переключился сюда. Тема максимально простая, даже тривиальная, но знать и понимать как всегда важно. А еще советую прочитать пост по областям видимости, он будет важен сегодня. Итак:

var - устаревший способ объявления переменных, который был актуален до выпуска ES6. Ключевое слово var объявляет переменную внутри функциональной области видимости, то есть внутри функции, что и следует из названия. Переменная, объявленная внутри функции, снаружи функции доступна не будет:

function foo() {
var i = 0
}
console.log(i) // i is not defined


Область видимости переменных, объявленных через let и const ещё уже — она блочная:

if (true) {
var i = 0
let k = 0
}

console.log(i) // 0
console.log(k) // k is not defined


То есть переменные, объявленные через let и const не доступны уже за пределами блока.
Блок — область { между фигурными скобками }

И это главное отличие. Есть ещё всплытие, которое вы можете посмотреть сами, но я ни разу не видел где это применялось бы, так что не расскажу ничего. Такой вот я негодяй.

Все остальные различия — вторичны. То, что описал здесь я — главный смысл введения новых способов объявления переменных. И спасибо за прочтение, это правда важно.

#javascript #web #theory



tgoop.com/prog_way_blog/88
Create:
Last Update:

А в чём все таки разница между var, let и const?

Начал писать другой пост и понял, что мне не хватает описания этой темы, поэтому слегка переключился сюда. Тема максимально простая, даже тривиальная, но знать и понимать как всегда важно. А еще советую прочитать пост по областям видимости, он будет важен сегодня. Итак:

var - устаревший способ объявления переменных, который был актуален до выпуска ES6. Ключевое слово var объявляет переменную внутри функциональной области видимости, то есть внутри функции, что и следует из названия. Переменная, объявленная внутри функции, снаружи функции доступна не будет:


function foo() {
var i = 0
}
console.log(i) // i is not defined


Область видимости переменных, объявленных через let и const ещё уже — она блочная:

if (true) {
var i = 0
let k = 0
}

console.log(i) // 0
console.log(k) // k is not defined


То есть переменные, объявленные через let и const не доступны уже за пределами блока.
Блок — область { между фигурными скобками }

И это главное отличие. Есть ещё всплытие, которое вы можете посмотреть сами, но я ни разу не видел где это применялось бы, так что не расскажу ничего. Такой вот я негодяй.

Все остальные различия — вторичны. То, что описал здесь я — главный смысл введения новых способов объявления переменных. И спасибо за прочтение, это правда важно.

#javascript #web #theory

BY progway — программирование, IT




Share with your friend now:
tgoop.com/prog_way_blog/88

View MORE
Open in Telegram


Telegram News

Date: |

Judge Hui described Ng as inciting others to “commit a massacre” with three posts teaching people to make “toxic chlorine gas bombs,” target police stations, police quarters and the city’s metro stations. This offence was “rather serious,” the court said. The initiatives announced by Perekopsky include monitoring the content in groups. According to the executive, posts identified as lacking context or as containing false information will be flagged as a potential source of disinformation. The content is then forwarded to Telegram's fact-checking channels for analysis and subsequent publication of verified information. As of Thursday, the SUCK Channel had 34,146 subscribers, with only one message dated August 28, 2020. It was an announcement stating that police had removed all posts on the channel because its content “contravenes the laws of Hong Kong.” The court said the defendant had also incited people to commit public nuisance, with messages calling on them to take part in rallies and demonstrations including at Hong Kong International Airport, to block roads and to paralyse the public transportation system. Various forms of protest promoted on the messaging platform included general strikes, lunchtime protests and silent sit-ins. To upload a logo, click the Menu icon and select “Manage Channel.” In a new window, hit the Camera icon.
from us


Telegram progway — программирование, IT
FROM American