20170409

JS

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

  1. HTML определяет основу, скелет и содержание веб страницы. Отвечает на вопрос "Что?" отображается на веб странице.
  2. CSS определяет, как отображается в браузере веб страница в целом и отдельные ее элементы. Отвечает на вопрос "Как?" контент отображается на веб странице.
  3. JavaScript — далее JS обеспечивает динамику веб страницы. Позволяет пользователю нажимать разные кнопки, вводить информацию, в ответ меняя стили отображения страницы, загружая данные с сервера и т.д.

Важно понимать: программы на JS выполняются на рабочей станции пользователя и используют ее ресурсы (в отличии, от программ на PHP, которые выполняются на сервере и используют его ресурсы).

Примечание. JS не имеет никакого отношения к языку Java — это просто сходство в названиях.

Попробуем написать небольшую программу на JS — отображение текущего местного времени по нажатию кнопки пользователем.


Теперь рассчитаем разницу между UTC и местным временем.



У новичка может создаться впечатление, что JS — совсем простой язык, который легко изучить.

Но на самом деле, JS — язык очень хитрый и коварный. Вот пример на эту тему.


Равна ли сумма 0.1 и 0.2 числу 0.3:


Такие шутки сводят с ума. Как может быть, что 0.1+0.2 не будет равно 0.3 ?

Мы раскроем этот секрет, если выведем сумму 0.1+0.2 и тогда поймем, а какое же число с точки зрения JS является суммой?


Эй, JS! Чему равна сумма 0.1 и 0.2 :


Получается так, что сумма 0.1 и 0.2 с точки зрения JS равна 0.30000000000000004

Тут надо иметь в виду, что результаты могут различаться в зависимости от браузера и времени выполнения этого теста. Возможно, лет через 100 эта проблема вообще будет решена и 0.1+0.2 всегда и везде будет ровно 0.3 без всяких фокусов.


Решается эта проблема с помощью округления.


Равна ли сумма 0.1 и 0.2 числу 0.3:


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

###