Команда highFives++ увеличивает переменную на 1,
но число, которое печатает после этого JavaScript, является зна-
чением до инкремента. Однако, запрашивая значение highFives
в самом конце (после двух инкрементов), мы получаем 2.
+= (плюс-равно) и –= (минус-равно)
Чтобы увеличить значение переменной на заданное число,
можно написать такой код:
var x = 10;
x = x + 5;
x;
15
2. Типы данных и переменные 33
Сначала мы создаем переменную
сваиваем
получить новое значение. Таким образом, выражение x = x + 5 по сути
означает «увеличить
В арсенале JavaScript есть более простой способ увеличения или
уменьшения переменной на заданную величину: это операторы += и −=.
Пусть у нас есть переменная
самое, что и x = x + 5. Оператор −= работает аналогично, то есть x −= 9
соответствует x = x – 9 (уменьшить
можно, например, управлять подсчетом очков в игре:
var score = 10;
Score — счет
score += 7;
17
score -= 3;
14
В этом примере мы сначала присваиваем переменной score (счет
игры) начальное количество очков (10). Потом, победив монстра, мы
увеличиваем счет на 7 очков с помощью оператора += (score += 7 соот-
ветствует score = score + 7). Поскольку изначально в score было
число 10, а 10 + 7 = 17, этой командой мы установили счет в 17 очков.
После победы над монстром мы столкнулись с метеоритом, и счет
уменьшился на 3 очка. Опять же, score -= 3 это то же самое, что
и score = score - 3. Поскольку перед этим в score было 17, score - 3
равняется 14; это число и будет новым значением score.
ПОПР ОБУ ЙТЕ !
Есть и другие операторы, похожие на += и -=. Например, *= и /=. Как вы
думаете, для чего они? Опробуйте их в деле с воздушными шариками:
Balloon —
var balloons = 100;
воздушный
balloons *= 2;
шар
???
Что делает команда balloons *= 2? А теперь попробуйте такой код:
var balloons = 100;
balloons /= 4;
???
Что делает команда balloons /= 4?
34 Часть I. Основы
Строки
До сих пор мы имели дело только с числами. Пора познакомиться с еще
одним типом данных — со
других языков программирования) строка является набором симво-
лов — букв, цифр, знаков пунктуации и пробелов. Чтобы JavaScript знал,
где начинается и заканчивается строка, ее берут в кавычки. Вот класси-
ческий пример с фразой «Привет, мир!»:
"Привет, мир!";
"Привет, мир!"
Чтобы создать строку, поставьте знак двойной кавычки ("), затем
введите какой-нибудь текст и закройте строку еще одной двой-
ной кавычкой. Можно пользоваться и одинарными кавычками ('),
однако, чтобы не путаться, все строки в этой книге будут в двойных
кавычках.
Строки можно хранить в переменных, так же как числа:
var myAwesomeString = "Что-то ОЧЕНЬ крутое!!!";
My awesome
string —
Моя крутая
строка
Также ничто не мешает присвоить строковое значение переменной,
где раньше хранилось число:
My thing —
var myThing = 5;
моя штука
myThing = "это строка";
"это строка"
А что если записать в кавычках число? Строка это будет или число?
В JavaScript строка остается строкой, даже если там хранятся цифровые
символы. Например:
Number nine —
var numberNine = 9;
номер девять
var stringNine = "9";
String nine —
строка девять
В переменной numberNine (число девять) хранится число, а в пере-
менной stringNine (строка девять) — строка. Чтобы выяснить, в чем их
различие, посмотрим, как они реагируют на сложение:
2. Типы данных и переменные 35
numberNine + numberNine;
18
stringNine + stringNine;
"99"
Сложив числовые значения 9 и 9, мы
получили 18. Однако при использовании опе-
ратора + со строками "9" и "9" эти строки
просто склеиваются воедино, образуя "99".
Объединение строк
Как мы только что убедились, оператор +
можно использовать и со строками, однако
действует он при этом совсем иначе, чем с числами. С помощью опе-
ратора + строки можно объединять: результатом будет новая строка,
состоящая из первой строки, к концу которой присоединена вторая:
Greeting —
var greeting = "Привет";
приветствие
var myName = "Ник";
greeting + myName;
My name —
"ПриветНик"
мое имя
Здесь мы создали две переменные (greeting и myName) и присвоили
каждой из них строковое значение ("Привет" и "Ник" соответственно).
При сложении этих переменных строки объединяются, образуя новую
строку — "ПриветНик".
Впрочем, не все тут идеально — между "Привет" и "Ник" должен
стоять пробел и запятая. JavaScript не ставит пробелов по собственной
инициативе, зато его можно попросить его об этом, добавив пробел
к одной из первоначальных строк:
var greeting = "Привет, ";
var myName = "Ник";
greeting + myName;
"Привет, Ник"
Дополнительный пробел перед закрывающей кавычкой в строке
дает пробел в середине результирующей строки.
Помимо их объединения, со строками можно выполнять множество
разных действий. Вот несколько примеров.
36 Часть I. Основы
Как узнать длину строки
Чтобы узнать длину строки, достаточно добавить к ее концу .length:
Length — длина
"Суперпупердлиннаястрока".length;
23
Можно добавлять .length к концу как самой строки, так и перемен-
ной, содержащей строку: