Ошибки
Вы точно, как и все мы, будете совершать ошибки🙅♂️ в коде📟. Программные ошибки🙅♂️ называют багами. Баг - означает ошибку🙅♂️ в программе💾 или в системе, из-за которой программа выдает неожиданное поведение и, как следствие, результат. Большинство программных ошибок🙅♂️ возникают из-за ошибок🙅♂️, допущенных разработчиками программы в её исходном коде📟, либо в её дизайне.
В значении «неуловимой технической ошибки🙅♂️» слово «жучок» (англ. bug) употреблялось задолго до появления компьютеров🖥️ персоналом телеграфных и телефонных компаний в отношении неполадок с электрооборудованием и радиотехникой. В 1878 году Томас Эдисон писал:
«Так было со всеми моими изобретениями. 1️⃣ Первый шаг — интуиция, которая приходит как вспышка, затем возникают трудности — устройство отказывается работать, и именно тогда проявляются «жучки» — так называют эти мелкие ошибки и трудности — и требуются месяцы пристального наблюдения, исследований и усилий, прежде чем дело дойдёт до коммерческого успеха или неудачи».
Отладка – это процесс поиска и исправления ошибок🙅♂️ в скрипте.
Видео
Самые частые ошибки
Надеюсь вы уже успели встретить свои первые ошибки🙅♂️ в процессе написания кода. Почему надеюсь? Потому что ошибки🙅♂️ - это наши учителя, которые показывают нам, что мы делаем неправильно в своем коде📟 и компьютер🖥️, точнее интерпретатор кода📟, нас попросту не может понять. Ошибки🙅♂️ при написании кода📟 случаются практически каждый день. Штука в том, чтобы уметь прочесть сообщение💬 об ошибке🙅♂️, которое выдаст вам машина🚗, чтобы оперативно найти и исправить недочёт в написанном коде📟. Чем больше вы изучаете JavaScript, тем больше начинаете ценить сообщения💬 об ошибках🙅♂️ - зачастую они очень верно показывают, где же вы допустили промах.
Пара самых популярных типов ошибок🙅♂️ в коде📟:
SyntaxError
Syntax Error
- нарушение правил языка👅. Например введите девять плюс точка с запятой 9 + ;
👇:
Ответ: SyntaxError: Unexpected token ;
Cинтаксическая ошибка🙅♂️, означает всего лишь, что в теле вашего предложения содержится ошибка🙅♂️. Другими словами, то, что вы написали, не является правильным с точки зрения языка👅 JavaScript. Интерпретатор не может прочесть ваше предложение и не знает, что с ним нужно делать. Unexpected token ;
означает, что интерпретатор прочёл что-то, чего прочесть вовсе не ожидал: в нашем случае — точку с запятой ;
.
Еще раз ошибемся🙅♂️!
Введем в консоле пять плюс три и скобка в конце 5+3)
.
У вас есть закрывающая скобка )
, но нет скобки открывающей (
! А ведь скобки всегда ходят парами — не может быть, чтобы была закрывающая, но не нашлось открывающей скобки, и наоборот.
ReferenceError
ReferenceError
- неправильное имя! Объект ReferenceError
представляет ошибку🙅♂️, возникающую при обращении к несуществующей переменной. Например введите пять плюс переменая 5 + переменая
:
Теперь перед нами ошибка обращения ReferenceError
. Быть может, вы уже заметили, в чём здесь дело? Давайте внимательно прочтём сообщение💬 об ошибке (ведь для этого, в конце концов, оно и выдаётся!). Там сказано: переменная 🔔 is not defined
— переменная не задана, вот в этом-то и кроется наша проблема! Сперва мы должны объявить🗣️ переменную каким-нибудь, скажем, таким образом:
TypeError
Объект TypeError представляет ошибку, возникающую, когда значение имеет не ожидаемый тип. Мы применяем метод toUpperCase
, с которым подробно познакомимся позже, к типу undefined, а это не допустимо так как этот метод преобразует строку в верхний регистр. Проверьте эту ошибку в консоле браузера, так как в LIVE EDITOR
она не работает.
let foo = undefined
foo.toUpperCase()
Помощь
Мы также можем ошибаться, поэтому если вы обнаружите ошибку на сайте или не точность в переводе, то можете легко помочь исправить ошибку на сайте. Для этого нужно нажать на кнопку Отредактировать эту страницу
в самом низу каждой странице.
Проблемы?
Пишите в Discord или телеграмм чат, а также подписывайтесь на наши новости
Вопросы:
Что означает Syntax Error
?
- Неправильный порядок знаков
- Нарушение правил языка
- Неуместные скобки
Что означает Reference Error
?
- Необъявленная переменная
- Синтаксическая ошибка
- Не верный тип
Какого рода ошибку вы получите, если попытаетесь запустить этот оператор? \nlet sum = (9 + ; 3)
undefined
SyntaxError
(здесь неожиданно появился ';'. Его следовало переместить в правую часть закрывающей скобки).11;
Для того чтобы понять, на сколько вы усвоили этот урок, пройдите тест в мобильном приложении нашей школы по этой теме или в нашем телеграм боте.
Ссылки:
- MDN web docs
- Код для подростков: прекрасное руководство по программированию для начинающих, том 1: Javascript - Jeremy Moritz
- JavaScript.ru
Contributors ✨
Thanks goes to these wonderful people (emoji key):
Dmitriy Vasilev 📖 | Resoner2005 🐛 🎨 🖋 |