Использование
переменных Выбор
имени переменной
Переменные - это именованные контейнеры данных
(например, чисел, текста или объектов). Каждая
переменная имеет свое уникальное имя. Существует
несколько неписаных правил определения
переменным имен.
- Имена переменных могут содержать все буквы
алфавита, как строчные, так и прописные, а также
цифры (0-9) и символ подчеркивания.
- Имя переменной должно начинаться с буквы или
символа подчеркивания.
- В имени переменных различаются регистры букв.
Например, переменные totalnum, Totalnum и TotalNum
в JavaScript различаются и могут принимать разные
значения.
- Не существует официального ограничения на
длину имени переменной, но оно должно
располагаться в одной строке кода программы.
(Будьте готовы к многократному введению в
программе одного и того же длинного имени.)
Следуя приведенным выше правилам, можно для
примера привести правильные имена переменных.
total_number_of_points
LastInvoiceNumber
temp1
a
_var24
При определении имени переменной выбирайте
либо логическое, описательное название, либо
сокращенное, символическое. Не бойтесь
использовать длинные описательные имена
переменных. Если, конечно, вы вундеркинд и даже
через несколько лет сможете вспомнить, что
означают имена переменных a, b, x, x1, то можете обойтись и
символическими названиями.
Глобальные и локальные
переменные
Некоторые языки программирования (например
PASCAL) требуют объявления в начале программы всех
используемых в ней переменных. В JavaScript
используется ключевое слово var
для определения области объявления переменных.
Во многих случаях переменные просто не
объявляются. Объявление переменной проводится
только тогда, если ей присваивается определенное
значение.
Чтобы понять, в каких случаях необходимо
объявлять переменные, вам нужно определить
область действия переменной. Область действия
переменной - это часть сценария, в которой
используется переменная. Существует два типа
переменных.
- Глобальные переменные. Используются во всем
сценарии (и других сценариях одного и того же
документа HTML). Они могут использоваться и как
аргументы разных функций.
- Локальные переменные. Используются только
как аргументы одной функции. Они применяются
только в той функции, в которой были созданы.
Чтобы создать глобальную переменную, объявите
ее в главном сценарии, а не в функции. В
приведенном ниже примере для объявления
переменной используется ключевое слово var:
var students=25;
Этот оператор объявляет переменную students
и определяет ей значение 25. Если этот оператор
использовать вне функции, то будет создана
глобальная переменная, если же внутри - то
локальная. В нашем примере ключевое слово var вводить не обязательно.
Следующий оператор равносилен предыдущему:
students=25;
Если вы не хотите вводить команду var,
удостоверьтесь, что это точно можно делать.
Хорошей привычкой считается вводить команду var всегда. Таким образом вы
сделаете свой сценарий простым в понимании и не
вызовите дополнительных ошибок.
Локальные переменные используются только в
одной функции. Все объявленные переменные (или
используемые в первый раз) в функции считаются
локальными. Например, все параметры функции - это
локальные переменные.
Будьте внимательны и обязательно перед
введением локальной переменной функции
используйте команду var. Это
дает указание JavaScript создать локальную
переменную, даже если уже существует глобальная
переменная с таким же именем.
Чтобы более наглядно объяснить используемые в
JavaScript методы объявления переменных, рассмотрим
листинг 8.1. Это измененный программный код
функции Greet(), которая была
рассмотрена в прошлом выпуске.
Листинг 8.1. Сценарий, в
котором используются глобальные и локальные
переменные
1: <HTML>
2: <HEAD>
3: <TITLE>Глобальные и локальные переменные</TITLE>
4: <SCRIPT LANGUAGE="JavaScript">
5: var name1="Вася"
6: var name2="Клавдия"
7: function Greet(who) {
8: alert("Внимание!" + who);
9: var name2="Юля";
10: }
11: </SCRIPT>
12: </HEAD>
13: <BODY>
14: <H1>Пример функции</H1>
15: <P>Сообщение выводится два раза</P>
16: <SCRIPT LANGUAGE="JavaScript">
17: Greet(name1)
18: Greet(name2)
19: </SCRIPT>
20: </BODY>
21: </HTML>
В сценарии листинга 8.1 используются следующие
переменные:
- name1 и name2
- глобальные переменные, определенные в
заголовке;
- who - локальная переменная,
созданная в функции Greet().
Если вы внимательно рассмотрели сценарий, то
уже заметили, что в функции Greet()
тоже создается переменная name2.
Поскольку при ее задании используется команда var, она не пересекается с глобальной
переменной name2. (Если бы это
происходило, то имя второго пользователя,
которому выводится сообщение, изменилось бы.)
Примите к сведению, что глобальные переменные
объявлены в заголовке программы документа HTML. На
самом деле переменные позволено объявлять в
любом месте программы, но удобнее всего это
делать в заголовке, поскольку он выполняется
первым. Если использовать переменную перед ее
объявлением (или определением ей значения), то ей
будет определено нулевое значение.
Я думаю, что вы уже поняли разницу между
глобальными и локальными переменными. Если вы
все еще не уверены - всегда используйте при
объявлении переменной команду var,
тогда вы избежите ошибок.
Определение значений
переменным
Для определения (присваивания) значения
переменной используется символ равенства (=).
Например, в следующем выражении переменной lines присваивается значение 50.
lines = 50;
Справа от знака равенства можно вводить самые
произвольные выражения, содержащие и переменные.
Для добавления к переменной единицы
используется следующий оператор:
lines = lines + 1;
Поскольку положительное и отрицательное
приращение используется в программировании
очень часто, JavaScript содержит два специальных
оператора, позволяющих выполнить эти операции.
Первый - это оператор положительного приращения +=:
lines +=1;
Подобно ему вводится оператор отрицательного
приращения:
lines -=1;
Если вы считаете, что это достаточно сложно, то
можете воспользоваться и операторами инкремента
и декремента (++ и --).
Следующий оператор увеличивает значение
переменной на единицу:
lines ++;
А этот оператор уменьшает значение переменной
на единицу:
lines --;
Операторы ++ и --
можно использовать и перед именем переменной.
Например ++lines. Следует
заметить, что эти два выражения не идентичны.
Разница заключается в моменте выполнения
операции приращения.
- Если оператор стоит после имени переменной, то
приращение осуществляется после вычисления
текущего выражения.
- Если оператор стоит перед именем переменной, то
приращение осуществляется до вычисления
текущего выражения.
Эта разница и определяет использование
операторов декремента и инкремента в одном и том
же выражении. В качестве примера попытаемся
присвоить переменной lines
значение 40. Следующие два
выражения отображают два разных результата:
lines = 40;
alert(lines++);
alert(++lines);
В первом случае отображается значение 40, а
затем значение переменной lines
увеличивается на единицу. Во втором же случае
сначала значение переменной увеличивается на
единицу и поэтому на экране отображается
значение 41.
Эти операторы введены только для удобства
введения программного кода. Если вы
предпочитаете работать с понятными выражениями,
то поступайте просто - используйте
арифметические операторы (+1 и -1) и добьетесь того
же результата.
Далее мы рассмотрим типы данных, используемые в
JavaScript. |