Переменные - это своеобразные контейнеры для каких либо данных. Это могут быть числа, текст, значения типа boolean (true, false), объекты и т.д. Данные в переменных, в отличии от констант, могут меняться в процессе выполнения программы (отсюда и название).
Переменные в JS объявляются при помощи слов var или let; разница между ними заключается в том, что переменная var является глобальной и распространяется на любой блок кода JS, а let действует только в пределах кода, в котором она создана.
После объявления переменной обязательно следует её имя. Имя переменной может содержать:
- цифры 0 - 9;
- буквы;
- символ подчёркивания ( _ );
- знак $.
Обратите внимание:
- имя переменной не может начинаться с цифры;
- имена переменных в JS чувствительны к регистру!
В коде это выглядит так:
1 var LineNumber ;
или так:
1 let LineNumber ; // эта переменная будет действовать только в данном блоке кода
Переменной может быть присвоено значение - либо сразу:
1 var LineNumber = 1 ;
либо позже:
1 var LineNumber ;
... ...
9 LineNumber = 1;
Стоит иметь в виду, что если переменной присваивается новое значение, то старое стирается:
1 var LineNumber = 1 ;
... ...
9 LineNumber = 4;
В данном примере значение переменной стало 4.
До тех пор, пока переменной не присвоено значение, она имеет значение undefined ("не определено"). По отношению к числам это значение трансформируется в NaN ("Not a Number", "это не число").
С помощью значения можно проверить, присвоено ли значение переменной; для этого используется оператор строгого сравнения (см. "Операторы"):
1 var LineNumber = 1 ;
2 LineNumber === undefined;
Результатом данного сравнения будет true.
Допускается объявление сразу нескольких переменных через запятую:
1 var a, b, c;
Что бы вызвать значение, достаточно просто указать переменную:
1 LineNumber ;
В JS можно ссылаться на переменную, которая будет объявлена в коде ниже, что не будет засчитано как ошибка; однако наиболее удобным вариантом для чтения кода будет объявление переменных и констант в начале, а потом уже любая работа с ними.
Типы переменных
Переменные могут быть нескольких типов.
- Number. Числа (пишутся без кавычек!).
- String. Строка, текст (пишется в одинарных кавычках!).
- Boolean. Принимает значение true или false (кавычек!).
- Object. Всё что угодно.
- Array. Массив.
Массив позволяет хранить сразу несколько различных значений, причём нескольких типов, например, имена людей и их возраст:
8 var Age = ['Tanya', 25, 'Vova', 23]
Что бы обратиться к элементам массива, применяется следующий код:
9 Age[2]
В данном примере будет получено значение 25.
Глобальные переменные
В JavaScript все глобальные переменные (т.е. переменные, которые действуют в любом коде JS, где бы он размещён не был) являются свойствами глобального объекта; для web-страниц это объект window. Соответственно, для объявления переменной, а так же обращения к ней, можно использовать выражение
1 window.NameVar = 10;
В этом выражении глобальной переменной NameVar присваивается значение 10. Что бы обратиться к переменной, созданной в другом window или frame, нужно использовать код
1 parent.NameVar;
Константы
Константы, в отличии от переменных, имеют постоянное, неизменяемое значение. Константа работает только в том блоке кода, в котором она применена (так же, как и переменная let). Значение константе присваивается сразу же при её объявлении:
1 const LineNumber2 = 1 ;