Оглавление

7.1. Математические операторы

□  + — сложение:
     Z = X + Y;
□  - — вычитание:
     Z = X - Y;
□  * — умножение:
     Z = X * Y;

□  / — деление:
     Z = X / Y;
□  % — деление по модулю:
           Z = X % Y;
□  ++ — оператор инкремента. Увеличивает значение переменной на 1:
           Z++; //Эквивалентно  Z = Z + 1;
□  -- — оператор декремента. Уменьшает значение переменной на 1:
     Z--; //Эквивалентно   Z = Z - 1;


Операторы инкремента и декремента могут использоваться в постфиксной или префиксной формах:
Z++; Z--; // Постфиксная форма

++Z; --Z; // Префиксная форма


В чем разница? При постфиксной форме (z++) возвращается значение, которое переменная имела перед операцией, а при префиксной форме (++z) — вначале производится операция и только потом возвращается значение. Продемонстрируем разницу на примере (листинг 7).

 

Листинг 7. Постфиксная и префиксная форма


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
         "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
 <title>Постфиксная и префиксная форма</title>
 <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>
<body>
<script type="text/javascript">
<!--
var X, Y;
X = 5;
Y = X++; // Y = 5, X = 6
var msg;
msg = "<b>Постфиксная форма (Y = X++;):<" + "/b><br> Y = ";
msg += Y + "<br>X = " + X + "<br><br>";
X = 5;
Y = ++X; // Y = 6, X = 6
msg += "<b>Префиксная форма (Y = ++X;):<" + "/b><br> Y = ";
msg += Y + "<br>X = " + X;
document.write(msg);
//-->
</script>
</body>
</html>

 

Постфиксная форма (Y = X++;):
Y = 5
X = 6

Префиксная форма (Y = ++X;):
Y = 6
X = 6

 

Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
Отправитель Нити