На этом шаге мы рассмотрим некоторые арифметические операции.
При составлении арифметических выражений мы не обойдемся без арифметических операций. Помимо известных вам операций сложения (+), вычитания (-), умножения (*) и деления (/) JavaScript унаследовал от языка программирования C++ ряд достаточно интересных операций, на которых мы остановимся более подробно. В таблице 1 представлены некоторые из таких операций. Допустимые операнды должны иметь числовые типы. Например, использовать эти операции для работы с логическими типами нельзя, а для работы с типом char (символьный тип) можно, поскольку в JavaScript тип char - это подмножество типа int (целый).
Операция | Результат |
---|---|
++ | Инкремент (увеличивает значение переменной на 1) |
-- | Декремент (уменьшает значение переменной на 1) |
+= | Сложение с присваиванием |
-= | Вычитание с присваиванием |
*= | Умножение с присваиванием |
/= | Деление с присваиванием |
% | Остаток от деления |
Использование операции инкремента разберем на следующем примере.
<HTML> <HEAD> <TITLE>Инкремент</TITLE> <SCRIPT LANGUAGE="JavaScript"> <!-- var A=1,B; B = ++A; C = A++; alert ("B = "+B+", C = "+C+", A = "+A); //--> </SCRIPT> </HEAD> <BODY> </BODY> </HTML>
Результат работы скрипта приведен на рисунке 1.
Рис.1. Использование инкремента
Поясним полученный результат. В скрипте явно описаны две переменные A и B, причем переменной A при ее описании присвоено значение 1. В строке B=++A; сначала значение переменной A увеличивается на 1 и становится равным 2, а затем это значение присваивается переменной B. В строке C=A++; - наоборот: сначала значение переменной A присваивается переменной C (переменная C получает значение 2), а затем значение переменной A увеличивается на 1, то есть становится равным 3. Таким образом, переменные A, B и C получат значения, приведенные на рисунке 1.
Из сказанного можно сделать следующий вывод. Если символ операции инкремента находится перед именем переменной (префиксная форма), то сначала значение этой переменной увеличивается на 1, а затем это новое значение используется в выражении. Если символ операции инкремента находится после имени переменной (постфиксная форма), то сначала значение этой переменной участвует в вычислении значения выражения, а только потом значение этой переменной увеличивается на 1.
Разберем теперь работу операций с присваиванием.
В отличие от операций инкремента и декремента, которые изменяют значение переменной на единицу, операции с присваиванием используются для изменения значения переменной на любое число. Например, конструкцию X=X+2; можно записать так: X+=2;, конструкцию A=A*B; можно представить так: A*=B; и т.д. Таким образом, если в левой и правой части оператора присваивания располагается одна и та же переменная, то можно воспользоваться соответствующей операцией с присваиванием.
В заключение приведем пример скрипта, иллюстрирующего использование операций деления и нахождения остатка от деления.
<HTML> <HEAD> <TITLE>Деление и остаток от деления</TITLE> <SCRIPT LANGUAGE="JavaScript"> <!-- var A=13,B=4; C = A % B; D = A / B; alert ("A = "+A+", B = "+B+", C = "+C+", D = "+D); //--> </SCRIPT> </HEAD> <BODY> </BODY> </HTML>
Результат работы скрипта приведен на рисунке 2.
Рис.2. Использование деления и нахождение остатка от деления
На следующем шаге мы рассмотрим операции сравнения и стороковые операции.