Выбрать главу

в JavaScript команда создания переменной никакого значения не возвра-

щает, поэтому интерпретатор печатает undefi ned.

В этом примере и дальше мы будем давать переменным англоязыч-

ные имена, потому что английский — основной язык всей IT-области

и программы принято писать только латиницей (кроме комментариев

и строковых значений). Использовать русскоязычные имена перемен-

ных — это как если при составлении математических уравнений вме-

сто x и y вы использовали бы русские буквы. Можно, но не принято.

Итак, чтобы задать переменной значение, используйте знак «равно»:

var age = 12;

Аge — возраст

undefined

Задание значения переменной называют присваиванием (здесь мы

присваиваем значение 12 переменной age). И опять в консоли появля-

ется undefi ned, поскольку мы только что создали новую переменную.

(В дальнейших примерах я буду пропускать это undefi ned.)

Теперь в интерпретаторе есть переменная age, которой присвоено

значение 12. И если ввести в консоли имя age, интерпретатор выдаст

значение этой переменной:

age;

12

Здорово! При этом значение переменной не высечено в камне ( пере-

менные потому так и зовутся, что могут менять значения), и, если вам

вздумается его обновить, просто используйте знак «равно» еще раз.

age = 13;

13

2. Типы данных и переменные 29

На этот раз я не использовал ключевое слово var, поскольку перемен-

ная age уже существует. Писать var нужно только при создании пере-

менной, а не при ее использовании. И обратите внимание: поскольку мы

не создавали новой переменной, команда присваивания вернула значе-

ние 13, которое и было напечатано в следующей строке.

Вот чуть более сложный пример — решение задачи про карамельки

без помощи скобок:

Number

var numberOfSiblings = 1 + 3;

of siblings —

var numberOfCandies = 8;

число братьев

numberOfCandies / numberOfSiblings;

и сестер

2

Number

of candies —

число конфет

Сначала мы создали переменную с именем numberOfSiblings

(количество братьев и сестер) и присвоили ей значение выражения

1 + 3 (которое JavaScript вычислил, получив 4). Потом мы создали

переменную numberOfCandies (количество карамелек) и присво-

или ей значение 8. И наконец, мы ввели: numberOfCandies / num-

berOfSiblings. Поскольку переменная numberOfCandies содержит

значение 8, а numberOfSiblings — 4, JavaScript вычислил, сколько

будет 8 / 4, вернув в результате 2.

Имена переменных

Вводя имена переменных, будьте внимательны и не допускайте опеча-

ток. Даже если вы перепутаете строчные и заглавные буквы, интерпре-

татор JavaScript не поймет, чего вы от него хотите! Например, если вы

случайно введете имя numberOfCandies со строчной буквой c, воз-

никнет ошибка:

numberOfcandies / numberOfSiblings;

Reference

ReferenceError: numberOfcandies is not defined

error —

ошибка

данных

Увы, JavaScript следует вашим указаниям буквально. Если вы непра-

вильно ввели имя переменной, JavaScript не поймет, что вы имели в виду,

и выдаст сообщение об ошибке.

Еще один нюанс именования переменных в JavaScript — в именах

не должно быть пробелов, из-за чего они могут оказаться сложными для

чтения. Если бы я назвал переменную numberofcandies, без заглавных

букв, читать программу стало бы труднее, поскольку неясно, где в этом

имени заканчиваются отдельные слова.

Один из обычных способов решения этой проблемы — писать каждое

слово с заглавной буквы: NumberOfCandies. Такую манеру именования

30 Часть I. Основы

называют верблюжьей записью, поскольку выпирающие

заглавные буквы напоминают верблюжьи горбы.

Имена переменных принято начинать со строчной

буквы, поэтому с заглавной буквы обычно пишут все слова

имени, кроме самого первого: numberOfCandies. В этой

книге я также использую эту форму верблюжьей записи;

впрочем, вы можете называть свои переменные как вам

угодно!

Создание новых переменных на основе

вычислений

Можно создавать новые переменные, выполняя матема-

тические действия с переменными, созданными ранее.

Давайте с помощью переменных выясним, сколько секунд

в году и каков ваш возраст в секундах! Но для начала разбе-

ремся, сколько секунд в одном часе.

Сколько секунд в часе

Сначала создадим две новые переменные — secondsInAMinute

Seconds

(количество секунд в минуте) и minutesInAHour (количество минут

in a minute —

в часе) — и присвоим им обеим значение 60 (поскольку, как мы знаем,

секунд

в минуте

в минуте 60 секунд, а в часе 60 минут). Теперь создадим переменную

secondsInAHour (количество секунд в часе), и пусть ее значение рав-