// В JavaScript имеются некоторые сокращенные формы арифметических операторов
var count = 0; // Объявление переменной
count++; // Увеличение значения переменной на 1
count--; // Уменьшение значения переменной на 1
count += 2; // Добавить 2: то же, что count = count + 2;
count *= 3; // Умножить на 3: то же, что count = count * 3;
count // => 6: имена переменных сами являются выражениями
// Операторы сравнения позволяют проверить два значения на равенство
// или неравенство, выяснить, какое значение меньше или больше, и т. д.
// Они возвращают значение true или false.
var х = 2, у = 3; // Знаки = выполняют присваивание, а не сравнение
x == y // => false: равенство
x != y // => true: неравенство
x < y // => true: меньше
x <= y // => true: меньше или равно
x > y // => false: больше
x >= y // => false: больше или равно
"two" == "three" // => false: две разных строки
"two" > "three" // => true: при упорядочении по алфавиту строка "tw” больше, чем "th"
false == (х > у) // => true: false равно false
// Логические операторы объединяют или инвертируют логические значения
(х == 2) && (у == 3) // => true: оба сравнения истинны. && - "И"
(х > 3) || (у < 3) // => false: оба сравнения ложны. || - "ИЛИ"
!(х == у) // => true: ! инвертирует логическое значение
Если фразы в языке JavaScript называются выражениями, то полные предложения называются инструкциями; они рассматриваются в главе 5 «Инструкции». В программном коде, приведенном выше, строки, заканчивающиеся точками с запятой, являются инструкциями. (В примере ниже можно увидеть инструкции, состоящие из
нескольких строк, которые не завершаются точками с запятой.) Между инструкциями и выражениями много общего. Грубо говоря, выражение - это конструкция, которая вычисляет значение, но ничего не делает: она никак не изменяет состояние программы. Инструкции, напротив, не имеют значения (или их значение не представляет интереса для нас), но они изменяют состояние программы. Выше уже были показаны инструкции объявления переменных и присваивания значений. Еще одной обширной категорией инструкций являются управляющие конструкции, такие как условные инструкции и инструкции циклов. Примеры этих инструкций будут показаны далее, после того, как мы познакомимся с функциями.
Функция– это именованный и параметризованный блок программного кода JavaScript, который определяется один раз, а использоваться может многократно. Формальное знакомство с функциями мы отложим до главы 8 «Функции», однако, как и в случае с объектами и массивами, мы много раз встретимся с функциями, прежде чем доберемся до этой главы. Ниже приводятся несколько примеров простых функций:
// Функции - это параметризованные блоки программного кода JavaScript,
// которые можно вызывать многократно.
function plus1(x) { // Определить функцию с именем "plusr и с параметром "х"
return х+1; // Вернуть значение на 1 больше полученного
} // Функции заключаются в фигурные скобки
plus1(y) // => 4: у имеет значение 3, поэтому этот вызов вернет 3+1
var square = function(x) { // Функции можно присваивать переменным
return х*х; // Вычислить значение функции
}; // Точка с запятой отмечает конец присваивания.
square(plus1(y)) // => 16: вызов двух функций в одном выражении
При объединении функций с объектами получаются методы.
// Функции, присвоенные свойствам объектов, называются методами.
// Все объекты в JavaScript имеют методы:
var а = []; // Создать пустой массив
а.push(1,2,3); // Метод push добавляет элементы в массив
a.reverse; // Другой метод: переставляет элементы в обратном порядке
// Можно определять собственные методы. Ключевое слово "this" ссылается на объект,
// в котором определен метод: в данном случае на массив points,
points.dist = function { // Метод вычисления расстояния между точками
var р1 = this[0]; // Первый элемент массива, относительно которого вызван метод
var р2 = this[1]; // Второй элемент объекта "this"