Переменные в JavaScript

В JavaScript переменная — это определенная ячейка памяти компьютера, в которой хранятся какие-либо данные. Данная ячейка должна обязательно иметь имя, для того чтобы можно было к ней обращаться и совершать различного рода операции с данными хранящимися в ней.

Объявление переменной

Для того чтобы использовать переменную в своем скрипте ее нужно объявить, то есть задать имя переменной. Имя переменной задается с помощью команды var:

var имя_переменной;

В имени переменной могут быть использованы: символы латинского алфавита и числа. 

ВАЖНО!!!

Имя переменной должно всегда начинаться с символа латинского алфавита

Кроме этого следует запомнить что в JavaScript в конце каждой команды ставится точка с запятой. Она обозначает конец одной команды и начало следующей. Если ее не ставить то программа будет выдавать ошибки. В следствии чего работать соответственно не будет.

Так же следует запомнить что язык JavaScript регистрозависимый. А это значит что переменная с именем nerpa  и переменная с именем Nerpa это две совершенно разные переменные. То есть если вы создаете переменную и присваиваете ей имя имя gred15 то в тексте всей программы она должна вызываться только под таким именем.

Пример:

var nbs1 = 99;
var Nbs1 = 21;

В примере мы создали две РАЗНЫЕ переменные которые имеют РАЗНЫЕ имена и обращение к ним в программе должно происходить  только по тем именам которые мы объявили.

Типы переменных

Переменная в качестве значения может содержать не только число или строку. От значения которое хранится в переменной зависит тип переменной. Типов переменной есть несколько вариантов: Number, String, Boolean, Date, Math, Array, Object, Error.

Тип переменной указывается при ее создании

Пример:

var nbs1 = new Date(); // создать переменную типа Date

От типа переменной будет зависеть не только значение которое она может содержать, но и свойства и методы, которые она будет поддерживать.

При объявлении переменной без оператора new, тип переменной будет определяться автоматически в зависимости от значения, которое в ней находится.

В JavaScript типы Number, String, Boolean называются элементарными. При объявлении переменных данного типа оператор new можно не использовать. Другие же типы переменных являются объектами, поэтому использование оператора new для их объявления обязательно.

Далее рассмотрим более подробно каждый тип переменной.

Number

Переменные данного типа хранят в себе числовые значения. Числовые значения могут быть целыми и десятичными.

Все числовые значения в JavaScrip хранятся в формате float 64 (т.е. под них отводится 8 байт с плавающей точкой). При работе с десятичными значениями это может приводить к неточностям.

В языке JavaScript можно не бояться таких ошибок как деление на ноль. При делении на ноль сценарий не будет остановлен и ошибки выведено не будет. Переменной при делении на ноль присвоится одно из двух значений:

  • Number.POSITIVE_INFINITY (плюс бесконечность) — данное значение будет присвоено при делении на ноль положительного числа;
  • NUmber.NEGATIVE_INFINITY (минус бесконечность) — данное значение будет присвоено при делении на ноль отрицательного числа.

Помимо этого другие математические ошибки могут приводить к присвоению переменной значения NaN. Значение NaN указывает что результат не является числом. При этом выполнение сценария так же не будет остановлено.

Присвоение переменной числового значения

var nomer = 99; // создание переменной числового типа

Как  и говорили ранее что при создании переменной числового типа не обязательно указывать тип переменной. Язык JavaScript автоматически его определит.

String

Строковые переменные в JavaScript — это набор символов   Unicode. Так же помимо обычных символов внутри строки могут использоваться Escape последовательности (про них поговорим немного позже).

Создание строковой переменной:

var stoka1 = "Это мой строка в JS"; // создание переменной типа строка

Следует запомнить что значения строковых переменных обязательно должно быть помещено в кавычки.

Рассмотрим создание двух переменных:

var nomer1 = 99; \\в данном случае у нас создается переменная типа число
var perem2 = "99"; \\ а в этом уже переменная будет типа строка

По своей сути как и во многих других языках программирования в JavaScript строка — это массив символов. . Для того чтобы работать с переменной типа строка необходимо знать ее длину (т.е. количество символов которые находятся в данной строке).

Длину строки можно узнать с помощью свойства lenght.

var stroka = "Привет!!" // создаем переменную типа строка
var len = stroka.lenght; // создаем переменную len

Итак рассмотрим подробнее. Вначале мы создали строковую переменную stroka и поместили в нее значение «Привет!!». Далее мы создали переменную которая будет хранить в себе длину строки (данная переменная будет числового типа, так как длина строки — это число). В нашем случае длина строки будет равна  8.

Теперь рассмотрим способ с помощью которого мы можем обратиться к отдельно взятому символу строки. Как мы говорили строка — это массив символов.

Каждому символу строки присваивается порядковый номер начиная с 0.

var stroka = "Привет!!" // создаем переменную типа строка
var sym1 = stroka[1];  

В приведенном выше случае значение переменной sym1 будет равно «р». Так как символы строки нумеруются с 0. Обращение к символу выглядит так: имя_строки[номер_символа] (в нашем случае это stroka[1]). 

Но это только один из способов получения определенного символа в строке. Существует еще один.

var stroka = "Привет!!" // создаем переменную типа строка
var symb = stroka.charAt(1); 

Данный способ работает практически одинаково с предыдущим. Но есть одно важное отличие. Если в [] (первом случае) указать номер не существующего символа то будет выведена ошибка, а во втором случае будет возвращена пустая строка.

Так же следует помнить то что мы не можем менять отдельные символы строки.

Boolean

Тип переменных Boolean — это логический тип переменных. Данный тип может содержать в себе только два значения: Истина или Ложь.

  • значение true означает «да» (истина);
  • значение false означает «нет» (ложь).

Date

Из названия типа можно догадаться какие значения хранят в себе переменные данного типа. Переменная типа Date хранит в себе дату. Дата может быть прошедшей, текущей или будущей. В качестве значения переменной может выступать год, месяц, число и время.

Есть много различных вариантов объявления переменной типа Date:

var date1 = new Date(); \\ текущая дата
var date2 = new Date(число); \* количество миллисекунд, прошедших от 1 января 1970 года 00:00 *\
var date3 = new Date(строка); \* строка, содержащая дату. Строка содержащая дату должна быть 
                              записана в определенном формате, формат записи зависит от страны. 
                              Например в Великобритании и многих других странах формат даты следующий:
                              День, Месяц, Год. А в США формат отличается: Месяц, День, Год *\
var date4 = new Date(число, число); \\ указывается два числа означающие год и месяц
var date5 = new Date(число, число, число); \\ дата формата: Год, Месяц, День
var date6 = new Date(число, число, число, число); \\ Год, Месяц, День, Час
var date7 = new Date(число, число, число, число, число); \\ Год, Месяц, День, Час, Минута
var date8 = new Date(число, число, число, число, число, число); \\Год, Месяц, День, Час, Минута, Секунда

Следует помнить что месяца указываются начиная с нуля. То есть 0 — январь …. 11 — декабрь.

Пример

var date12 = new Date("13 May 2016 16:45");
var date34 = new Date(2021, 0, 7) \\ 7 января 2021 года 

 

Math

Переменные данного типа нельзя создать таким же способом как создавали другие переменные т.е. запись типа var perem1 = new Math();  будет ошибкой.

Объект класса Math хранит в себе различные математические функции, которые используются для вычислений. Делается это с помощью вызова вида Math.метод. При этом не создаются никакие переменные типа Math.

var perem1 = 1.5;
var pere2 = Math.round(perem1); // pere2 = 2

Метод round объекта Math позволяет округлить число по математическим правилам (если дробная часть больше 0,4 то округляется до большего).

 

Object

Объекты данного типа чаще всего используются для создания ассоциативных массивов. Подробнее о данном классе мы рассмотрим в массивах.

Error

Объекты данного класса создаются при возникновении различных ошибок выполнения сценария. Кроме этого объекты данного типа можно объявить следующим образом:

new Error (сообщение об ошибке);