Я новичок в программировании с плотным графиком: я штатный сотрудник стартапа, мама и студентка полного цикла веб-разработки в Bloc.io. На протяжении всего моего пути к изучению разработки я находил онлайн-форумы чрезвычайно полезными! Однако многие из участников очень опытны и пишут на языке, который трудно понять новичку. Ниже приведены некоторые примеры использования объявления переменных JavaScript словами одного новичка!

С выпуском JavaScript ES6 мы познакомились с двумя новыми объявлениями переменных - const и let, которые, по мнению некоторых разработчиков, почти заменяют способ объявления переменных в ES5 - var. Эти новые объявления переменных действительно интересны и отлично справляются со своей задачей, но не спешите отбрасывать var в сторону!

Новичку в разработке программного обеспечения может быть сложно пролистать форумы и увидеть все дискуссии о значении этих новых заявлений. Важно знать, что каждый стиль объявления служит своей цели, и важно понимать, что делает каждый из них уникальным и когда их следует использовать.

Давайте посмотрим на варианты использования каждого из этих объявлений переменных!

var:

var имеет область действия - это означает, что к нему можно получить доступ в любой точке функции, в которой он был объявлен. Итак, если вы объявите с var в глобальной области видимости, он будет доступен везде (имейте в виду, то же самое верно и для let) . Это классическое объявление переменной ES5, которое мы все знаем и использовали бесчисленное количество раз. var по-прежнему является отличным выбором, когда вам нужна динамическая переменная, которую легко переназначить и к которой легко получить доступ во всем сценарии.

Давайте посмотрим на var:

Я напишу цикл for и воспользуюсь var для объявления переменной i. Теперь, если я console.log переменную i после цикла for (вне блока цикла), это будет успешным, и я могу получить доступ к этой переменной! (Примечание. В разделе let вы увидите, что это невозможно сделать, если переменная объявлена ​​с помощью let)

for (var i = 0; i < 4; i++) {
 // console.log(i); 
}
console.log(i);
// Console => 4

Если я попытаюсь ввести в console.log переменную i перед циклом for, переменная вернется как undefined. Это происходит потому, что когда вы объявляете переменную с var, ваша программа прочитает код и заметит, что он существует, но еще не присвоено значение.

console.log(i);
for (var i = 0; i < 4; i++) {
 // console.log(i); 
}
// Console => undefined

позволять:

let - это новое объявление переменной ES6, которое используется для переменных уровня блока. Это означает, что вы должны использовать let для объявления своей переменной только в том случае, если к ее значению нужно обращаться только в блоке кода, в котором она находится. Блестящее использование let - внутри циклов!

Давайте посмотрим на let:

Я напишу цикл for (который всегда находится в блоке) и использую let для объявления моей i variable. Если я хочу занести в console.log переменную i в блок кода, это будет успешно!

for (let i = 0; i < 4; i++) {
 console.log(i);
};
// Console => 
 0
 1
 2 
 3

Если я хочу занести в console.log переменную i перед циклом for, я получу сообщение об ошибке, указывающее на то, что i не определено. Если я попытаюсь ввести в console.log переменную i после цикла for, произойдет точно такая же ошибка. Это происходит потому, что объявление переменной с let означает, что она доступна только в рамках определенного блока кода.

console.log(i);
for (let i = 0; i < 4; i++) {
 console.log(i);
};
// Console => “ReferenceError: i is not defined”

const:

const - это объявление ES6, используемое, когда вы хотите предотвратить переназначение. Очень важно отметить, что то, что вы не можете переназначить значение «постоянной» переменной, не означает, что оно никогда не может измениться. Например, если вы сделаете const = someObject и сам объект изменится, значение const отразит эти изменения. Если вы решите использовать объявление переменной ES5 var - вместо const - для определения переменной, вы рискуете случайно переназначить ее в какой-то момент вашего кода.

Давайте посмотрим на const:

Я объявлю «постоянную» переменную для Pi и присвою ей значение 3,14, потому что меня не интересует переназначение этой константы в моем скрипте. Позже в моем коде, если я попытаюсь присвоить значение Pi равному 12, я получу сообщение об ошибке, сообщающее мне, что Pi уже был назначен константе.

const Pi = 3.14;
console.log(Pi);
Pi = 12;
console.log(Pi);
// Console => 
 3.14
 “TypeError: Assignment to constant variable.”

Если я вернусь и изменю эту «постоянную» переменную на var, я не получу сообщения об ошибке, потому что, как мы знаем, при объявлении переменных с помощью var ее можно легко переназначить!

var Pi = 3.14;
console.log(Pi);
Pi = 12;
console.log(Pi);
// Console => 
 3.14
 12

Итак, вы можете видеть, что эти новые объявления переменных действительно хорошо служат своей цели, но также имеют свои собственные уникальные наборы ограничений и рисков! Используйте const, когда вам нужно предотвратить переназначение, и let, когда вам нужно только получить доступ к значению в его конкретном блоке кода. В остальном мы все еще можем обратиться к нашему верному оле var.

Каким образом вы регулярно используете эти различные объявления переменных в своем коде? Поделитесь ими со своими друзьями здесь, чтобы мы все могли узнать, как лучше всего использовать их уникальные способности!