Марейн Хавербеке - Выразительный JavaScript
- Название:Выразительный JavaScript
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:978-1593275846
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Марейн Хавербеке - Выразительный JavaScript краткое содержание
В процессе чтения вы познакомитесь с основами программирования и, в частности, языка JavaScript, а также выполните несколько небольших проектов. Один из самых интересных проектов — создание своего языка программирования.
Выразительный JavaScript - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
В некоторых случаях JavaScript позволяет опускать точку с запятой в конце инструкции. В других случаях она обязательна, или следующая строка будет расцениваться как часть той же инструкции. Правила, согласно которым можно или нельзя опускать точку с запятой, довольно сложны и увеличивают вероятность ошибиться. В этой книге мы не будем опускать точку с запятой, и я рекомендую делать так же в своих программах, пока вы не накопите опыт.
Переменные
Как же программа хранит внутреннее состояние? Как она его запоминает? Мы получали новые величины из старых, но старые величины это не меняло, а новые нужно было использовать сразу, или же они исчезали. Чтобы захватить и хранить их, JavaScript предлагает нечто под названием «переменная».
var caught = 5 * 5;
И это даёт нам второй вид инструкций. Специальное ключевое слово (keyword) var
показывает, что в этой инструкции мы объявляем переменную. За ним идёт имя переменной, и, если мы сразу хотим назначить ей значение – оператор = и выражение.
Пример создаёт переменную под именем caught
и использует её для захвата числа, которое получается в результате перемножения 5 и 5.
После определения переменной её имя можно использовать в выражениях. Величина переменной будет такой, какое значение в ней сейчас содержится. Пример:
var ten = 10;
console.log(ten * ten);
// → 100
Переменные можно называть любым словом, которое не является ключевым (типа var
). Нельзя использовать пробелы. Цифры тоже можно использовать, но не первым символом в названии. Нельзя использовать знаки пунктуации, кроме символов $
и _
.
Переменной присваивают значение не навсегда. Оператор =
можно использовать на существующих переменных в любое время, чтобы присвоить им новое значение.
var mood = "лёгкое";
console.log(mood);
// → лёгкое
mood = "тяжёлое";
console.log(mood);
// → тяжёлое
Представляйте себе переменные не в виде коробочек, а в виде щупалец. Они не содержат значения – они хватают их. Две переменные могут ссылаться на одно значение. Программа имеет доступ только к значениям, которые они содержат. Когда вам нужно что-то запомнить, вы отращиваете щупальце и держитесь за это, или вы используете существующее щупальце, чтобы удержать это.

Переменные как щупальца
Пример. Для запоминания количества денег, которые вам должен Василий, вы создаёте переменную. Затем, когда он выплачивает часть долга, вы даёте ей новое значение.
var vasyaDebt = 140;
vasyaDebt = vasyaDebt - 35;
console.log(vasyaDebt);
// → 105
Когда вы определяете переменную без присваивания ей значения, щупальцу не за что держаться, оно висит в воздухе. Если вы запросите значение пустой переменной, вы получите undefined
.
Одна инструкция var
может содержать несколько переменных. Определения нужно разделять запятыми.
var one = 1, two = 2;
console.log(one + two);
// → 3
Ключевые и зарезервированные слова
Слова со специальным смыслом, типа var
– ключевые. Их нельзя использовать как имена переменных. Также есть несколько слов, «зарезервированных для использования» в будущих версиях JavaScript. Их тоже нельзя использовать, хотя в некоторых средах исполнения это возможно. Полный их список достаточно большой.
break case catch continue debugger default delete do else false finally
for function if implements in instanceof interface let new null package
private protected public return static switch throw true try typeof var
void while with yield this
Не нужно их запоминать, но имейте в виду, что ошибка может крыться здесь, если ваши определения переменных не работают, как надо.
Окружение
Коллекция переменных и их значений, которая существует в определённый момент, называется окружением. Когда программа запускается, окружение не пустое. Там всегда есть переменные, являющиеся частью программного стандарта, и большую часть времени там есть переменные, помогающие взаимодействовать с окружающей системой. К примеру, в браузере есть переменные и функции для изучения состояния загруженной веб-страницы и влияния на неё, для чтения ввода с мыши и клавиатуры.
Функции
Многие величины из стандартного окружения имеют тип function
(функция). Функция – отдельный кусочек программы, который можно использовать вместе с другими величинами. К примеру, в браузере переменная alert
содержит функцию, которая показывает небольшое окно с сообщением. Используют его так:
alert("С добрым утром!");

Диалог alert
Выполнение функции называют вызовом. Вы можете вызвать функцию, записав скобки после выражения, которое возвращает значение функции. Обычно вы напрямую используете имя функции в качестве выражения. Величины, которые можно написать внутри скобок, передаются программному коду внутри функции. В примере, функция alert
использует данную ей строку для показа в диалоговом окне. Величины, передаваемые функциям, называются аргументами функций. Функция alert
требует один аргумент, но другие могут требовать разное количество аргументов разных типов.
Функция console.log
Функция alert
может использоваться как средство вывода при экспериментах, но закрывать каждый раз это окно вам скоро надоест. В прошлых примерах мы использовали функцию console.log
для вывода значений. Большинство систем JavaScript (включая все современные браузеры и Node.js) предоставляют функцию console.log
, которая выводит величины на какое-либо устройство вывода. В браузерах это консоль JavaScript. Эта часть браузера обычно скрыта – большинство браузеров показывают её по нажатию F12, или Command-Option-I на Маке. Если это не сработало, поищите в меню “web console” или “developer tools”.
В примерах этой книги результаты вывода показаны в комментариях:
var x = 30;
console.log("the value of x is", x);
// → the value of x is 30
Хотя в именах переменных нельзя использовать точку – она, очевидно, содержится в названии console.log
. Это оттого, что console.log
– не простая переменная. Это выражение, возвращающее свойство log
переменной console
. Мы поговорим об этом в главе 4.
Возвращаемые значения
Показ диалогового окна или вывод текста на экран – это побочный эффект. Множество функций полезны оттого, что они производят эти эффекты. Функции также могут производить значения, и в этом случае им не нужен побочный эффект для того, чтобы быть полезной. К примеру, функция Math.max
принимает любое количество переменных и возвращает значение самой большой:
Интервал:
Закладка: