' Основы JavaScript. Урок 1. Введение в JavaScript. Что такое JavaScript. | Шнайдер блог

Основы JavaScript. Урок 1. Введение в JavaScript. Что такое JavaScript.

JavaScript  - сценарный язык программирования, предоставляющий доступ к объектам приложений. Наиболее популярен среди web-разработчиков, т. к. позволяет добавить html-странице интерактивности (взаимодействия с пользователем).  

В данном уроке мы затронем следующие темы:

История развития JavaScript: от предпосылок до тенденций

1992 г. - первые отсылки к JavaScript. Именно тогда перед компанией Nombas была поставлена задача: разработать встраиваемый скриптовый язык, который впоследствии смог бы стать достойной альтернативой макросам. Для этого он должен был поддерживать стандартные операторы и функции «Си», и при этом перевести управление памятью в автоматический режим. Получившемуся продукту было дано название «Cmm» (Си минус минус), на смену которому (в виду его негативного звучания) довольно быстро пришло «ScriptEase».

Апрель 1995 г. – начата работа над концепцией и внедрением в фирменный  браузер Netscape языка, который давал бы возможность программировать как со стороны сервера, так и со стороны клиента, мог бы «склеить» составляющие части web-ресурса и был бы доступен даже для разработчиков, обладающих достаточно посредственной квалификацией. Первоначальное название «Mocha» впоследствии было заменено на «LiveScript».

Ноябрь 1995 г. – на основе «ScriptEase» создается внедряемый в web-страницы проприетарный (для коммерческого использования) продукт «CEnvil». Страницы, доступные для редактирования при помощи скриптового языка, стали называться «Espresso Pages» и демонстрировали последствия внедрения в браузер языка «ScriptEase».

Декабрь 1995 г. – для повышения интереса к проекту принимается решение переименовать «LiveScript» в «JavaScript», созвучное с весьма популярным на тот момент языком «Java».

Июль 1996 г. – «Microsoft» анонсирует (а затем и выпускает) аналог «JavaScript» – «JScript»

Декабрь 1996 г. - ассоциация ECMA (по инициативе Netscape) проводит стандартизацию языка JavaScript. Стандартизированная версия описывается при помощи стандарта «ECMA-262» и  получает название «ECMAScript».

Последующие изменения JavaScript будет целесообразно представить в виде таблицы:

Дата

Версия JavaScript

Ключевые изменения

Июнь 1997 г.

1.2

Внедрен переключатель «switch»

Октябрь 1998 г.

1.3

Достигнута совместимость с 1-ой редакцией ECMA-262.

Март 1999 г.

1.4

Разработана исключительно для продуктов Netscape

Ноябрь 2000 г.

1.5

Достигнута совместимость с 3-ей редакцией ECMA-262.

Ноябрь 2005 г.

1.6

Внедрено нескольких дополнений для Array, упрощений Sting, E4X и других улучшений.

Осень 2006 г.

1.7

Добавлены списочные выражения и генераторы из Python и  блоковые области.

Осень 2008 г.

1.8

Добавлены новые методы обработки массивов, пара генераторов и новая форма записи для функций

Декабрь 2009 г.

1.8.1

Добавлена встроенная поддержка JSON

 

2.0

Ведется разработка

По состоянию на апрель 2015 г. (по данным «TIOBE Index») JavaScript является 6-м по популярности языком программирования, тогда как в 2014 занимал лишь 9 место в списке.

Тенденции развития

Текущее развитие JavaScript происходит достаточно стремительно и направлено в сторону стандартов HTML5 и ECMAScript 5 (с перспективой на ECMAScript 6). Язык становится все более мощным, избавляется от имеющихся багов и обрастает новыми возможностями.  При этом все нововведения максимальную совместимы с предыдущими версиями, что позволяет исключить проблемы с уже существующими приложениями. Однако это не относится к возможностям, что лишь частично описаны в стандарте, поскольку любые изменения в нем могут вызвать ошибки в том, что было основано на старой реализации.

Суть JavaScript

В начале урока мы уже дали определение, что такое JavaScript, но сейчас остановимся на нем более подробно.

Среди ключевых особенностей JavaScript можно выделить:

  • Полную интеграцию с HTML/CSS;
  • Поддержку наиболее распространенными браузерами, в числе которых Mozilla Firefox, Opera, Google Chrome, IE и Safari;
  • Максимальную упрощенность всех операций. 

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

Стоит отметить, что JavaScript может выполняться на любом устройстве, вплоть до кофеварки или стиральной машинки. Единственное условие – наличие у последних программы-интерпретатора.  Иными словами, исходный код передается специально разработанной для этого программе, которая будет выполнять его построчно, «как есть». Не путать с программами-компиляторами, которые не только обрабатывают исходный код, но и преобразуют его в другой машинно-ориентированный.

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

В итоге мы получаем:

JavaScript  представляет собой сценарный язык программирования, который используется (в основном) для создания программ (скриптов), которые подключаются непосредственно к HTML и начинают выполняться при старте загрузки web-страницы.  При этом скрипты – это обычный текст, который не требует особых навыков или специализированных программ для своего написания. Достаточно иметь хотя бы поверхностное представление относительно HTML и CSS, а также любой текстовый редактор (например, стандартный блокнот). Это еще одна из сильных сторон JavaScript и его ключевое отличие от другого языка программирования – Java.

Java и JavaScript

Из-за схожести в названиях многие начинающие программисты считают, что  Java и JavaScript – это 2 разновидности одного языка программирования. Однако подобное утверждение в корне не верно.

Пусть изначально  JavaScript и задумывался, как «младший брат» Java, сегодня это вполне самостоятельный язык. Среди ключевых их различий можно выделить следующие:

  • Объектно-ориентированный подход в JavaScript основан на прототипах, а в Java – на классах;
  • Типизация Java статическая, JavaScript — динамическая;
  • При загрузке Java используется скомпилированный байт-код, тогда как  JavaScript интерпретируется непосредственно из файла.

Возможности и ограничения JavaScript

Мы уже рассмотрели историю развития JavaScript, поговорили о его сути и отличии от Java, а значит, пришло время затронуть тему возможностей и ограничений.

При помощи JavaScript можно:

  • Создавать/редактировать/удалять HTML-теги;
  • Читать и редактировать элементы web-страницы;
  • Посылать запросы на сервер и загружать данные без перезагрузки страницы (AJAX).
  • Работать с cookie;
  • Реагировать на указанные события (например, щелчок мышкой по элементу или нажатие определенной кнопки на клавиатуре);
  • И т. д.

Ограничения JavaScript, по большей части, связаны с использованием браузера и сформулированы таким образом, чтобы потенциальные авторы вредоносного кода не могли запускать свое творение на любом компьютере сети. Разработчики браузеров постоянно отслеживают динамику злоупотреблений и периодически, в ответ на них, вносят дополнительные ограничения. Однако ключевыми из них считаются 2:

  • Все скрипты выполняются в так называемой «песочнице» - среде, которая не позволяет реализовывать задачи программирования общего назначения (к примеру, создание файлов);
  • Политика общего происхождения не позволяет скрипту, встроенному в страницу, получить доступ к некоторым свойствам объектов другой страницы, если их протокол, хост и номере порта различны.

Разумеется, в тех случаях, когда JavaScript используется вне браузера (скажем, на сервере), все эти ограничения отсутствуют.

Основы JavaScript: подготовка к программированию

Как уже было сказано выше, для написания скриптов подойдет любой текстовый редактор, а для их реализации – браузер с поддержкой JavaScript. В последующих примерах мы будем пользоваться бесплатными программами Notepad++ и Mozilla Firefox.

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

  • Создайте новый текстовый документ и вставьте в него следующий код:

<html>

<body>

<script language="JavaScript">

document.write("Добро пожаловать на Shneider Host")

</script>

</body>

</html>

  • В меню «Файл» выберите пункт «Сохранить как», а в предложенных форматах html (если такой формат отсутствует, в поле «имя» напишите имя_файла.html).

  • Откройте файл при помощи вашего браузера. Вот, что у вас должно в итоге получиться:

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

А на следующем занятии мы поговорим о том, что представляет собой структура кода JavaScript и как интегрировать его в код сайта.