Комментарии
Со временем программа становится большой и сложной. Появляется необходимость добавить комментарии, которые объясняют, что происходит и почему.Комментарии могут находиться в любом месте программы и никак не влияют на ее выполнение. Интерпретатор JavaScript попросту игнорирует их. Однострочные комментарии начинаются с двойного слэша //. Текст считается комментарием до конца строки:
1 // Команда ниже говорит "Привет"
2 alert('Привет');
3
4 alert('Мир'); // Второе сообщение выводим отдельно
Многострочные комментарии начинаются слешем-звездочкой "/*" и заканчиваются звездочкой-слэшем "*/", вот так:
1 /* Пример с двумя сообщениями.
2 Это - многострочный комментарий.
3 */
4 alert('Привет');
5 alert('Мир');
Все содержимое комментария игнорируется. Если поместить код внутрь /* ... */ или после // — он не выполнится.
1 /* Закомментировали код
2 alert('Привет');
3 */
4 alert('Мир');
Вложенные комментарии не поддерживаются!
В этом коде будет ошибка:
1 /*
2 alert('Привет'); /* вложенный комментарий ?!? */
3 */
4 alert('Мир');
В многострочных комментариях всё очень просто — комментарий длится от открытия /* до закрытия */. Таким образом, код выше будет интерпретирован так:
Комментарий открывается /* и закрывается */: /*
alert('Привет'); /* вложенный комментарий ?!? */
Код (лишние символы сверху вызывают ошибку): */
alert('Мир');
Виды комментариев
Существует три типа комментариев.
Первый тип отвечает на вопрос «Что делает эта часть кода?». Эти комментарии бывают особенно полезны, если используются неочевидные алгоритмы.
Второй тип комментариев отвечает на вопрос «Почему я выбрал этот вариант решения задачи?». И он гораздо важнее.
Например: «Я выбрал здесь анимацию при помощи JavaScript вместо CSS, поскольку IE именно в этом месте ведёт себя некорректно».
Третий тип комментариев возникает, когда мы в одном месте кода делаем вычисления или присвоения переменных, неочевидным образом использованные совсем в другом месте кода.
Например: «Эти значения отформатированы именно так, чтобы их можно было передать на сервер».
Не бойтесь комментариев. Чем больше кода в проекте — тем они важнее. Что же касается увеличения размера кода — это не страшно, т.к. существуют инструменты сжатия JavaScript, которые при публикации кода легко их удалят.
Чтобы хранить информацию, используются переменные.
Переменная
Переменная состоит из имени и выделенной области памяти, которая ему соответствует. Для объявления или, другими словами, создания переменной используется ключевое слово var:
var message;
После объявления, можно записать в переменную данные:
var message;
message = 'Привет'; // сохраним в переменной строку
Эти данные будут сохранены в соответствующей области памяти и в дальнейшем доступны при обращении по имени:
1 var message;
2 message = 'Привет';
3
4 alert(message); // выведет содержимое переменной
Для краткости можно совместить объявление переменной и запись данных:
var message = 'Привет';
Аналогия из жизни
Проще всего понять переменную, если представить ее как «коробку» для данных, с уникальным именем.
Например, переменная message - это коробка, в которой хранится значение "Привет":
В коробку можно положить любое значение, а позже - поменять его. Значение в переменной можно изменять сколько угодно раз:
1 var message;
2
3 message = 'Привет';
4
5 message = 'Мир'; // заменили значение
6
7 alert(message);
При изменении значения старое содержимое переменной удаляется.
Существуют функциональные языки программирования, в которых значение переменной менять нельзя. В таких языках положил один раз значение в коробку - и оно хранится там вечно, ни удалить ни изменить. А нужно что-то другое сохранить - изволь создать новую коробку (объявить новую переменную), повторное использование невозможно. С виду - не очень удобно, но, как ни странно, и на таких языках вполне можно успешно программировать. Изучение какого-нибудь функционального языка рекомендуется для расширения кругозора.
