Читаем Основы программирования на JavaScript полностью

[x]. Пропущенные или непарные кавычки

Это очень распространенная проблема. Строки в JavaScript начинаются символом 'или " и должны заканчиваться таким же символом. Если этот символ существует в строке, то он должен быть экранирован. Например, код


var x = 'It's a beautiful day';


является недопустимым, потому что ' в It's не экранировано. Этот код должен выглядеть следующим образом:


var x = 'It\'s a beautiful day'; // или var x = "It's a beautiful day";


Еще одной достаточно распространенной ошибкой является завершение строки другим символом, т.е.:


var x = "It's a beautiful day';


Эта строка начинается с символа ", поэтому должна закончиться также символом ".

[x]. Пропущенная точка с запятой

Хотя точки с запятой обычно не нужны в JavaScript, но лучше все же их использовать. Например, если нужно сократить файл JavaScript, то обычно удаляют все переносы строк. Возьмем следующий код:


var x=5 var y=10


Если удалить переносы строк, то получим код


var x=5 var y=10


который вызовет ошибку. Если бы использовались точки с запятой, то проблемы не было бы.

Перейдем к ошибкам времени выполнения. После запуска кода на исполнение начинают появляться ошибки времени выполнения. Эти ошибки могут возникать в связи с множеством причин. Каждый из следующих далее блоков кода будет порождать ошибку:


alert(x); // 'x' не определено var x; x[5] = 'test'; // 'x' будет null или не является объектом window.frames = 5; // Не реализовано var for; // ожидается идентификатор document.doesNotExist(5); // объект не поддерживает это свойство или метод alert(parseInt('5')); // ожидается объект


Многие из этих проблем вызываются более общими ошибками, которые приходится разыскивать.

[x]. Неправильное использование прописных букв

Все встроенные функции JavaScript используют специальную форму записи имен функций, предполагающую, что имя функции начинается со строчной буквы, а в начале каждого следующего слова будет использоваться прописная буква: parseInt, getElementById, createElement, appendChild, и т.д.

Так как JavaScript учитывает регистр символов, то неправильный ввод имени одной из этих функций часто будет приводить к ошибке во время выполнения.

[x]. Ссылка на несуществующий код, функции или объекты DOM

Эта проблема возникает обычно в отношении объектов DOM. Предположим, что имеется код, который изменяет некоторые элементы формы на странице. Если делается попытка выполнить этот код до появления элементов формы, например, если поместить его в тег , то будет получена ошибка JavaScript.

Обычно эта проблема легко решается. Лучшим решением будет выполнение кода по событию onload, например:



или еще лучше, присоединение события к загрузке тела:


document.captureEvents(Event.LOAD); document.onLoad=loadFunction;


Перейти на страницу:

Похожие книги

Старший брат следит за тобой. Как защитить себя в цифровом мире
Старший брат следит за тобой. Как защитить себя в цифровом мире

В эпоху тотальной цифровизации сложно представить свою жизнь без интернета и умных устройств. Но даже люди, осторожно ведущие себя в реальном мире, часто недостаточно внимательно относятся к своей цифровой безопасности. Между тем с последствиями такой беспечности можно столкнуться в любой момент: злоумышленник может перехватить управление автомобилем, а телевизор – записывать разговоры зрителей, с помощью игрушек преступники могут похищать детей, а к видеокамерам можно подключиться и шпионить за владельцами. Существуют и государственные проекты наподобие «Умного города», подразумевающие повсеместное внедрение видеокамер и технологий распознавания лиц.Все это не значит, что нужно стремиться к цифровому затворничеству и панически избегать гаджетов, но необходимо изучить и соблюдать элементарные правила безопасности. Михаил Райтман в своей книге рассказывает, как максимально снизить вероятность утечки персональных данных, осложнив задачу потенциальным злоумышленникам.

Михаил Анатольевич Райтман

Зарубежная компьютерная, околокомпьютерная литература
Большие данные. Революция, которая изменит то, как мы живем, работаем и мыслим
Большие данные. Революция, которая изменит то, как мы живем, работаем и мыслим

С появлением новой науки открылась удивительная возможность с точностью предсказывать, что произойдет в будущем в самых разных областях жизни. Большие данные — это наша растущая способность обрабатывать огромные массивы информации, мгновенно их анализировать и получать порой совершенно неожиданные выводы. По какому цвету покраски можно судить, что подержанный автомобиль находится в отличном состоянии? Как чиновники Нью-Йорка определяют наиболее опасные люки, прежде чем они взорвутся? И как с помощью поисковой системы Google удалось предсказать распространение вспышки гриппа H1N1? Ключ к ответу на эти и многие другие вопросы лежит в больших данных, которые в ближайшие годы в корне изменят наше представление о бизнесе, здоровье, политике, образовании и инновациях.

Кеннет Кукьер , Виктор Майер-Шенбергер

Зарубежная компьютерная, околокомпьютерная литература / Прочая компьютерная литература / Книги по IT