Что такое JavaScripts? Основные функции JavaScript. Язык программирования JavaScript (Ява Скрипт)

В этой статье мы расскажем, что такое JavaScript (Джава Скрипт), приведем примеры, поясним для чего он нужен в html коде. Дадим ответы на популярные вопросы вебмастеров.

1. Что такое JavaScript простыми словами

JavaScript (на русском "Джава Скрипт", сокращенно "JS") - язык программирования встраиваемый в HTML страницы с целью удобства общения с пользователем, обработки ошибок и создания динамичности странице в целом.

JavaScript является объектно-ориентированным и интерпретируемым языком. Является системно-независимым (работает на любых платформах). Зачастую JS код называют скриптами. Можно сказать, что этот язык "заточен" лишь для веб-программирования.

Синтаксис языка во многом напоминает Си и Java, семантически же язык гораздо ближе к Self, Smalltalk.

2. Задачи решаемые JavaScript
  • Проверку полей html форм (тег ) до того, как они передались на сервер
  • Информационные сообщения с предупреждениями
  • Эффекты для выделения главных элементов и частей страницы
  • Оригинальные выпадающие меню
  • Математические вычисления

Обычно с помощью JavaScript делают слайдеры . Можно также выводить контент через вывод на AJAX , это позволяет скрывать из html-кода ненужные или повторящиеся элементы страницы сайта. Изучать эти коды новичку не имеет смысла, т.к. они довольно сложные.

3. Как включить поддержку JavaScript в браузере

Все браузеры поддерживают JavaScript. По умолчанию Джава Скрипт уже должен быть включен в браузерах, если нет, то ниже представлены инструкции для различных браузерах по включению JS.

1. Включить JavaScript в Firefox 2. Включить JavaScript в Google Chrome

"Настройка и управление Google Chrome" -> "Параметры" -> "Расширенные" -> "Личные данные (Настройки содержания)" -> "JavaScript:" Разрешить всем сайтам использовать JavaScript (рекомендуется) или запретить выполнение JavaScript на всех сайтах

3. Включить JavaScript в Opera

Нажать на клавишу F12 Выбрать пункт "Включить JavaScript"

4. Включить JavaScript в Internet Explorer

"Сервис" -> "Свойства обозревателя" -> вкладка "Безопасность" -> выбираем зону "Интернет" -> кнопка "Другой" -> пункт "Сценарии" -> "Разрешить сценарии"

4. Пример: как вставить JavaScript в html страницу

Код JavaScript вписывается прямо в html код страницы. Для его выделения используют специальные теги

код на javasript

Атрибут type="text/javascript" указывать не обязательно, но желательно.

Использовать <script> можно в заголовочных тегах , так и просто в теле страницы .

Писать html теги между открывающим и закрывающим тегом script запрещено. Это место только для кода на JavaScript.

Чтобы не дублировать один и тот же JavaScript на каждой странице его обычно выносят в отдельный файл с расширением ".js". Этот файл можно подключить в любом месте html-страницы.

4.1. Пример 1. Всплывающие сообщение Hello, World

Ниже представлен пример html код, который при загрузке страницы выводит всплывающее сообщение "Hello, World".

Hello, World на JavaScript

Пример с Alert. Будет выведено всплывающие сообщение

alert ("Hello, World! ");

Нажмите на ссылку:

Ссылка 4.2. Пример 2. Альтернатива с обработкой javascript

Ниже представлен пример html кода с обработкой кода JavaScript с помощью идентификатора id.

Hello, World на JavaScript window.onload = function() { var linkWithAlert = document.getElementById ("check_link "); linkWithAlert.onclick = function() { return confirm ("Перейти по ссылке? "); }; };

Нажмите на ссылку :

Ссылка 4.3. Пример 3. Смена цвета объекта при наведении курсора

При наведении курсора мышки на определенные области, они изменяют цвет. Делается это через JavaScript. Например

Код этого примера:

RED GREEN BLUE

Это лишь самые элементарные вещи на JavaScript. Его возможности довольно большие. Не даром в литературных магазинах по этому языку можно найти отдельные книги.

Язык программирования JavaScript является объектно-ориентированным языком сценариев, изначально разработанный Netscape Communications под названием LiveScript, но затем переименован в "JavaScript" и с учетом синтаксиса ближе этот язык ближе Java компании Sun Microsystems. JavaScript был позже стандартизированы ECMA под названием ECMAScript. Microsoft называет свои версии JScript.

Изменение названия LiveScript на JavaScript произошло примерно в то же время, когда компания Netscape включили поддержку технологии Java в браузере Netscape Navigator. Это изменение внесло много путаницы у умы обучающихся программированию для начинающих. Не существует никакой реальной связи между Java и JavaScript, их сходство начинается и заканчивается схожим синтаксисом и тем фактом, что оба языка широко используются в сети Интернет.

JavaScript является объектно-ориентированным языком сценариев, который взаимодействует через интерфейс называемый Document Object Model (DOM) с содержимым, может быть выполнен на стороне сервера (веб-серверов) и на стороне клиента в веб-браузере пользователя при просмотре веб-страниц. Многие веб-сайты используют JavaScript технологии на стороне клиента для создания мощных динамических веб-приложений в программировании для чайников. Он может использовать Unicode и может использоватьмощь и силу регулярных выражений (это было введено в версии 1.2 в Netscape Navigator 4 и Internet Explorer 4). JavaScript выражения, содержащиеся в виде строке можно выполнить с помощью функции EVAL.

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

JavaScript / ECMAScript поддерживается такими движками как:

  • Rhino
  • SpiderMonkey

Окружающая среда

Комментарий разметки требуется для того, чтобы гарантировать, что код не отобразится в виде текста, в браузерах, которые не признают тега . теги в XHTM / XML-документах, однако, не будут работать, если закомментированы. Современные браузеры, которые поддерживают XHTML и XML, достаточнохорошо разработаны, чтобы признать , так что в этих документах код остается без комментариев.

HTML-элемент может генерировать внутренние события, к которым можно подключить скрипт обработчик. Чтобы создать верный документ HTML 4.01, нужно вставить соответствующее заявление по умолчанию вязык сценариев в разделе заголовка документа.

Элементы языка

Переменные

Переменнык, как правило, динамически типизированы. Переменные определяются либо просто присваиванием им значения или с помощью оператора "var". Переменные, объявленные вне функции находятся в "глобальной" области видимости, видимы на всей веб-странице, переменные, объявленные внутри функции являются локальными для этой функции. Чтобы передать переменные с одной страницы на другую, разработчик может установить "cookie" или использовать скрытый фрейм или окно в фоновом режиме для их хранения.

Структуры данных

Главным типом является структура данных в виде ассоциативного массива похожая на хэши на языке программирования Perl или словари Python, Postscript и Smalltalk.

Элементы могут быть доступны по номерам или ассоциативным названиям (если они были определены). Таким образом, следующие выражения могут все быть эквивалентны:

MyArray,
myArray.north,
myArray["north"].

Объявление массивов

MyArray = new Array(365);

Массивы реализованы так, что только определенные (имеющие не пустое значение) элементы будут использовать память, они "разряжают массивы". Если мы зададим множество myАггау = "чего-то там" и myArray = "что-то там еще ", то мы использовали место только для этих двух элементов.

Объекты

JavaScript имеет несколько видов встроенных объектов, а именно Object, Array, String, Number, Boolean, Function, Date and Math. Другие объекты принадлежат объектам DOM (окна, формы, ссылки и т.д.).

Определив функции конструктора можно определить объекты. JavaScript является объектно-ориентированный язык основанным на прототипах. Можно добавить дополнительные свойства и методы к отдельным объектам после того как они были созданы. Для этого для всех экземпляров определенного одного типа объекта можно использовать прототип-заявление.

Пример: Создание объекта
// Функция-конструктор

Function MyObject(attributeA, attributeB) { this.attributeA = attributeA this.attributeB = attributeB }
// Создать объект
obj = new MyObject("red", 1000)

/ / Доступ к атрибуту объекта
alert(obj.attributeA)

/ / Доступ атрибут с ассоциативный обозначения массива
alert(obj["attributeA"])

Иерархия объектов может быть воспроизведена и в JavaScript. Например:

Function Base() { this.Override = _Override; this.BaseFunction = _BaseFunction; function _Override() { alert("Base::Override()"); } function _BaseFunction() { alert("Base::BaseFunction()"); } } function Derive() { this.Override = _Override; function _Override() { alert("Derive::Override()"); } } Derive.prototype = new Base(); d = new Derive(); d.Override(); d.BaseFunction();

В результате получим на экране: Derive::Override() Base::BaseFunction()

Управляющие инструкции
If ... else if (condition) { statements }
Циклы
while (condition) { statements } Do ... while do { statements } while (condition); For loop for (; ; ) { statements } Цикл For ... in
Этот цикл проходит по всем свойствам объекта (или элемента в массиве)
for (variable in object) { statement }

Оператор выбора
switch (expression) { case label1: statements; break; case label2: statements; break; default: statements; }

Функции
Заключается тело функции в {тело может быть пустым}, а список аругментов указывается внутри () идущих после имени функции. Функции могут возвращать значение, после выполнения.

Function(arg1, arg2, arg3) { statements; return expression; }

В качестве примера разберем функцию, основанную на алгоритме поиска наибольшего общего делителя Евклида:

Function gcd(a, b) { while (a != b) { if (a > b) { a = a - b; } else { b = b - a; } } return a; }

Количество аргументов при вызове данной функции не должны обязательно предоставлять столько аргументов, сколько указано при объявлении функции. В функции аргументы могут также быть доступны через массив аргументов.

Каждая функция - экземпляр функции, базового типа объекта. Функции могут быть созданы и назначены как и любые другие объекты:

Var myFunc1 = new Function("alert("Hello")"); var myFunc2 = myFunc1; myFunc2();

Результат на экране:

Взаимодействие с пользователем

Большинство взаимодействие с пользователем осуществляется с помощью HTML-форм, которые могут быть доступны через HTML DOM. Однако Есть также некоторые очень простые средства общения с пользователем:

Оповещение диалоговом окне
Подтвердите диалоговое окно
Строки диалогового окна
Строка состояния
Консоли

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


Java Script - это просто. Часть 1

Сценарный язык JavaScript - язык для составления скриптов, разработанный фирмой Netscape, - обладает огромными возможностями для разработки интернет-приложений, работающих как на клиентской, так и на серверной стороне. Язык очень простой, и для работы с ним достаточно лишь иметь понятие основ HTML. В JavaScript есть немало интересных особенностей, и одна из них - возможность обработки не только данных, но и событий. Событие определяется как некоторое действие, выполненное в контексте браузера - например, щелчок мышью или загрузка страницы. Кроме того, JavaScript отлично интегрируется с РНР и дополняет его выполнением тех функций, которые на PHP реализовать невозможно либо трудоемко.

Первые шаги программирования в JavaScript

Код скрипта JavaScript (далее по тексту JS) размещается непосредственно в HTML-коде. JS имеет тег признака . Все, что стоит между тегами и , интерпретируется как код на этом языке. Одна из наиболее важных команд, используемых при программировании на JS - document.write()., которая нужна для того, чтобы что-либо написать в текущем документе. Чтобы не быть голословным, приведу простейший пример:




document.write("JavaScript - это просто!!!")


Наберите этот текст в "Блокноте" и сохраните с расширением HTML. Результатом выполнения этого кода будет вывод в окне браузера текста "JavaScript - это просто!!!". Вы скажете: "Может, будет, а может, и не будет", - и окажетесь правы. Если ваш браузер не поддерживает вывод JS, то вместо текста вы будете видеть полностью код. Избежать отображения кода такими браузерами можно, используя тег комментария из HTML -


Еще одной очень важной частью программирования на языке JS являются события и обработчики событий. События главным образом инициируются теми или иными действиями пользователя. Каждое действие описывает отдельный тип события. Допустим, при нажатии кнопки мыши происходит событие, называемое "Click", при пересечении указателем мыши какой-либо ссылки гипертекста - событие MouseOver. Для того, чтобы программа реагировала на эти события, используются специальные программы обработки событий. Например, программа - обработчик события нажатия кнопки мыши называется onClick и сообщает компьютеру, что нужно делать, если произойдет данное событие. Для наглядности снова создадим простой пример. Создадим форму, которая будет содержать кнопку, при нажатии на которую будет появляться выпадающее окно.



test page




Нажатие на кнопку Test Button вызывает окно с текстом "Тест выполнен!" (рис. 1). Рассмотрим подробно каждую команду этого кода.

Командой создаем некую форму с кнопкой. Атрибут onClick="alert("Тест выполнен!")" определяет, что происходит, когда нажимают на кнопку мыши. Таким образом, если имеет место событие Click, компьютер выполнит вызов alert("Тест выполнен!"). Функция alert() создает выпадающие окна. При ее вызове необходимо в скобках задать некую строку, которая появится в выпадающем окне. Как видно в коде, в конструкции alert() используются одинарные кавычки. Объясняется это тем, что в большинстве случаев имеется возможность использовать оба типа кавычек. Причем не имеет значения, в каком порядке их использовать: вначале двойные, а затем одинарные или наоборот. В нашем примере используются сначала двойные, а после одинарные кавычки, а если бы мы применили конструкцию из двух двойных кавычек -onClick="alert("Тест выполнен!")", то компьютер не смог бы разобраться в скрипте, поскольку неясно, к которой из частей конструкции имеет отношение функция обработки событий onClick, а к которой - нет.

Итак, окно содержит текст, который был передан функции JS alert. Такое ограничение применяется по соображениям безопасности. Выпадающее окно можно создать и с помощью метода prompt() (см. рис. 2), однако в этом случае окно будет воспроизводить текст, введенный пользователем, а потому скрипт, написанный "злым хакером", может принять вид системного сообщения и попросить ввести некий пароль. В нашем случае понятно, что окно создано браузером, а не операционной системой, и его невозможно просто взять и удалить.

Очень удобным средством в JS являются функции, которые в большинстве случаев используются как способ связать вместе несколько команд. В качестве наглядного примера допустим, что вам необходимо много раз повторить какую-то последовательность текстовых строк. Используя уже полученные знания по языку JS, мы могли бы использовать команду document.write и получили бы код следующего вида:




");

");
document.write("Самая интерактивная страница
");
document.write("Java Script - это просто
");
document.write("Самая интерактивная страница
");
document.write("Java Script - это просто
");
// -->

Невооруженным глазом видно, что конструкция построена нерационально. Перестроим этот код, используя функцию:





Все команды скрипта, которые находятся внутри фигурных скобок, принадлежат созданной нами функции FreeFunc (). Теперь обе команды document.write() связаны и могут быть выполнены при вызове указанной функции. Далее мы вызываем FreeFunc() три раза сразу после того, как дали определение самой функции. Это приведет к тому, что функция выполнится трижды, т.е. три раза будут напечатаны обе строки. Изюминка заключается в том, что возможность передачи переменных при вызове функции придает скриптам подлинную гибкость. Функции могут использоваться и совместно с процедурами обработки событий. Например, можно создать функцию calc(), которая будет иметь две переменные x и y, а результат математического действия будет сохраняться в переменной result. Последней командой функции укажем alert(result). Далее функцию calc() можно вызвать при нажатии на кнопку командой onClick="calc()", в результате чего получим всплывающее окно с результатом расчета.

Работа с окнами

Еще одна возможность языка JavaScript - открытие новых окон в браузере. Кроме того, вы имеете возможность управлять самим процессом создания окна. Например, можно указать размер окна, должно ли новое окно иметь строку статуса, панель инструментов или меню. Перечень основных параметров приведен в таблице 1.

Таблица 1. Основные параметры создания окна в JS

Рассмотрим на практике пример создания нового окна в браузере:












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

Созданная нами функция OpenWindow() открывает новое окно браузера. Первый аргумент функции open() - пустая строка ("") - обозначает, что в данном случае мы не желаем указывать конкретный URL, а JS обязан создать дополнительно новый документ. В скрипте мы определяем переменную myWindow, при помощи которой получаем доступ к новому окну (воспользоваться для этой цели именем окна (TestWindow) в данном случае невозможно). Созданное окно обладает размерами 300x100 пикселей и не имеет ни строки статуса, ни панели инструментов, ни меню. После открытия окна внутри него открываем объект document для отображения текста. Делается это с помощью команды myWindow.document.open(). Здесь мы обращаемся к open() - методу объекта document. Эта команда не открывает нового окна - она лишь готовит document к предстоящей печати. Обязательно необходимо поставить перед document.open() приставку myWindow, чтобы получить возможность печатать в новом окне. Далее по тексту скрипта с помощью вызова document.write() формируется текст нового документа и его параметры. Для этого записываем в документ обычные теги языка HTML. При этом можно использовать абсолютно любые теги языка гипертекстовой разметки HTML. По завершении работы с командой document() необходимо ее закрыть, для чего используем команду myWindow.document.close().

При открытии окна мы должны использовать три аргумента:
myWindow= open("page.htm", "TestWindow",
"width=300,height=100,status=no,toolbar=no,menubar=no");

В данном примере мы указываем конкретный URL (page.html), а второй параметр - это имя окна. Зная имя окна, можно загрузить туда новую страницу с помощью записи

При этом нужно указать имя соответствующего окна, а если такого окна не существует, то с этим именем будет создано новое. Не допустите ошибки: переменная myWin - это вовсе не имя окна, но только с помощью этой переменной можно получить к нему доступ. Область действия этой переменной ограничивается лишь скриптом, в котором она определена. А вот имя окна (TestWindow) - уникальный идентификатор, которым можно пользоваться из любого из окон браузера. Для закрытия окна используется функция close(), а все остальное идентично работе с функцией open().

Строка состояния

В JS можно выполнять запись в строку состояния браузера - для этого достаточно лишь записать нужный текст в windows.status. Снова рассмотрим приемы работы с этой функцией на примере. Создадим скрипт, который при нажатии на кнопку будет выводить заданный текст в строке состояния, а при нажатии на вторую кнопку - стирать его:













Запустив программу в браузере, получаем форму с двумя кнопками. При нажатии на кнопку On Statbar Text в строке состояния появляется надпись "Нажата кнопка On", а при нажатии кнопки Off Statbar (Clear text) строка состояния очищается (см. рис. 4).

Итак, имеем форму с двумя кнопками, которые обе вызывают функцию statbar(). При нажатии клавиши On Statbar Text функция вызывается
следующим образом: statbar("Нажата кнопка On"). Текст в кавычках и есть тот текст, который мы увидим в строке состояния. В свою очередь, функция statbar() была объявлена следующим образом:

function statbar(txt) {
window.status = txt;}

В функции в скобках мы поместили (txt). Это значит, что строка, которую мы передали этой функции, помещается в переменную txt, а строка txt заносится в строку состояния посредством команды window.status = txt. Соответственно, удаление текста из строки состояния выполняется как запись в window.status пустой строки: (""). Использование записи текста в строку состояния безгранично. Вы можете поместить туда объяснение ссылки при наведении на нее курсором мыши, создать бегущую строку или просто использовать для отображения даты и времени.

Таймер

С помощью функции таймера (timeout) можно выполнить некоторые команды по истечении заданного времени. Продемонстрирую это в следующем скрипте:




setTimeout("alert("Добро пожаловать на страницу \"MyHome\" ")", 3000);
// -->

Ожидайте 3 секунды. Появится окно

По истечении 3-х секунд после открытия страницы появится всплывающее окно с надписью "Добро пожаловать на страницу "MyHome"" (см. рис. 5).

SetTimeout() - это метод объекта window. Он предназначен для установки интервала времени. Первый аргумент при вызове - это код JS, который следует выполнить по истечении указанного времени (в нашем случае это alert()). Второй аргумент служит для указания, когда этот код следует выполнять. При этом время указывается в миллисекундах.

Фреймы

Окно браузера может быть разбито на несколько отдельных фреймов. Фрейм в общем понятии - это поле в форме прямоугольника. Каждый из фреймов выдает на экран содержимое собственного документа. Создание фреймов все же является задачей языка HTML, но мы кратко рассмотрим основные моменты этого процесса на языке JS. Для создания фреймов используются теги и . В следующем примере создадим скрипт, разделяющий страницу браузера на 5 фреймов, и загрузим в каждый из них отдельную страницу:













Результат выполнения данного скрипта представлен на рис. 6.

Во фрейме мы используем свойство rows и cols и задаем процентное соотношение занимаемого места фреймами в окне браузера. Свойство rows означает, что фреймы будут расположены друг над другом, а cols - друг напротив друга. Можно также задать размер фрейма в пикселях, для чего достаточно после числа не ставить символ %. В теге указываем ссылку на загружаемую страницу, а атрибутом name задаем уникальное имя фрейма. Имеется возможность задать толщину границы между фреймами. Для этого нужно воспользоваться в теге параметром border и задать ему какое-либо значение (по умолчанию border=0). Рассмотрим, как JavaScript "видит" фреймы, присутствующие в окне браузера. Для этого обратимся к созданному нами выше окну с фреймами. JS организует фреймы, представленные на web-странице, в виде некой иерархической структуры, на вершине которой находится окно браузера. В нашем случае оно разбито на пять фреймов. Таким образом, окно как объект является родоначальником данной иерархии, а фреймы - соответственно, его потомки. Мы присвоили этим фреймам уникальные имена: frame1, frame2… frame5. C помощью этих имен мы можем обмениваться информацией с указанными фреймами. Допустим, необходимо активировать некую ссылку в первом фрейме, однако соответствующая страница должна загружаться не в этот же фрейм, а в другой. Примером такой задачи может служить составление меню или так называемых навигационных панелей, где один фрейм всегда остается неизменным, но имеет несколько различных ссылок для навигации. Не углубляясь в изучение иерархий, создадим пример навигации по сайту с помощью фреймов. В одном фрейме мы создадим несколько ссылок. При активации какой-либо из них соответствующая страница будет помещена не в тот же самый фрейм, а в соседний. Вначале создадим сами фреймы:







Далее создадим простую HTML-страницу "start.htm":


Стартовая страница
Это стартовая страница нашего сайта

И меню панели навигации:








Страница 1

Страница 2
Карта сайта

Здесь мы видим несколько способов загрузки новой страницы в фрейм main. В первой ссылке для этой цели используется функция load():
Страница 1

В этой строке вместо явной загрузки новой страницы мы предлагаем браузеру выполнить команду на языке JavaScript - для этого используем параметр javascript вместо обычного href. Далее передаем "1.htm" в качестве аргумента функции load(), а саму функцию load() определяем следующим образом:

function load(url) {
parent.main.location.href= url;}

Внутри скобок написано url. В нашем примере это означает, что строка "1.htm" при вызове функции заносится в переменную url. И эту новую переменную теперь можно использовать при работе внутри функций load().

Во второй ссылке используется параметр target. Это уже не код JavaScript, а одна из конструкций языка HTML. Мы просто указываем имя необходимого фрейма и не обязаны ставить перед именем указанного фрейма слово parent. Если необходимо избавиться от фреймов с помощью функции load(),нужно написать в ней лишь parent.location.href= url. Результат выполнения нашего скрипта представлен на рис. 7.

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

Павел Кучинский, [email protected]

Web-сценариями являются программы, которые записываются напрямую в html-коде или просто в файлах, что является более предпочтительным. Данные программы пишутся на языке ЯваСкрипт. Таким образом, говоря о том, что такое Javascripts, можно сказать, что это язык программирования, который является интерпретирующим.

ЯваСкрипт считывается браузером, и затем выполняются записанные выражения и производятся манипуляции, которые заданы над страницей. JavaScript по своему синтаксису подобен таким языкам программирования, как Java, С++ и С.

JavaScript обязан своим появлением разработкам таких компаний, как Sun Microsystems (Oracle) и Netscape (Mozilla). Первоначальное название языка было LiveScript. Однако из-за того, что тогда был очень популярным язык Java от компании Sun Microsystems, отделом маркетинга компании Netscape было решено изменить название языка на JavaScript. При этом был расчет, что данный шаг добавит языку популярности. Также, говоря о том, нужно отметить, что Java и JavaScript являются двумя разными языками.

ECMA-262 является официальным стандартом этого языка. Название этого языка JavaScript - ECMAScript.

Для изучения этого языка пригодятся предыдущие знания про CSS и Html. Если еще до этого момента вы не знали про CSS и Html, то следует незамедлительно ознакомиться.

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

Следующие возможности появляются при применении на web-страницах сценариев :

  • Добавление различных анимационных эффектов, которые не представляется реализовать с помощью Html и CSS.
  • Возможность изменения содержимого элементов Html и добавления новых тегов без перезагрузки страницы.
  • Реагирование на события (реагирование на действия пользователя) - обработка нажатий клавиш на клавиатуре и передвижения курсора мыши.
  • Выполнение проверки данных, которые были введены в поля формы перед отправкой на сервер. Это уменьшает нагрузку на сервер и ускоряет работу сайта.
  • Определение версии браузера и загрузка требуемой страницы в зависимости от этого.

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

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

  • Отсутствует доступ к файлам, которые размещены на пользовательском компьютере. В целом нет доступа за пределы самой веб-страницы. Исключением могут быть только файлы cookie, которые могут быть считаны и записаны с помощью JavaScript. Объекты такого типа обычно нужны лишь для того, чтобы страница загружалась быстрее.
  • Нет возможности выполнения кроссдоменных запросов, то есть получение доступа к веб-страницам, которые находятся на другом домене, даже если они открыты в соседних вкладках.
  • Нет возможности закрывать вкладки и окна, которые открывались с его помощью.
  • Отсутствует возможность защиты исходного текста на странице и запрета на копирование изображений или текста со страницы. При этом остается возможность добавлять некоторые ограничения, что позволяют функции JavaScript.

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

Что такое Javascripts?

Как уже было отмечено выше, JavaScript - это язык, придающий интерактивность веб-страницам. С помощью этого языка создаются те приложения, которые включаются в Html-код. К примеру, формы или анкеты регистрации, заполняемые пользователем. Нередко язык JavaScript путают с Java, но между этими языками мало общего.

Некоторые даже сравнивают JavaScript с другими языками Ruby, Self, Python. Но это отдельный язык.

Использование JavaScript

Используя JavaScript, можно вносить изменения в страницу, изменять стили элементов, добавлять или удалять теги. Также есть возможность узнать о своих действиях пользователя на странице (уменьшение или увеличение рабочей области экрана, клики с помощью мышки, нажатия любых клавиш, прокрутка страницы). Есть возможность получения доступа к любому элементу Html-кода и манипулирование с этим элементом. Таким образом, ответом на вопрос «Что такое JavaScripts?» будет получение возможности загрузки данных без перезагрузки страницы, ввод сообщений, установка или считывание cookie и выполнение множества других действий.

Основа уникальности JavaScript

Основная уникальность этого языка в том, что он имеет поддержку почти у всех браузеров и имеет полную интеграцию с ними. Все действия с помощью JavaScript являются очень простыми. Нет никакой другой технологии, которая бы вмещала в себя все подобные преимущества. Например, есть не кросс-браузеры, они имеют поддержку не у всех обозревателей (это XUL, ActiveX, VBScript). Также есть и такие, которые не в полной степени интегрированы с браузером. Это Silverlight, Flash, Java. На данный момент идет большое развитие подобной технологии и в разработке находятся элементы JavaScript 2.

Альтернативные языки программмирования

Бывает, что возможности JavaScript ограничены. В таком случае помогут следующие языки программирования.

Самый используемый язык - Java. С помощью этого языка описываются сложные алгоритмы, но это не всегда требуется на обычном сайте. По этой причине долго загружаются java-applet`ы и имеют немалый объем.

С самого начала язык Flash был разработан как кросс-бразуерный и для создания объектов мультимедиа. К примеру, для создания интерактивных областей на сайте, игр, баннеров, проигрывателей для аудио и видео. Помимо прочего, с помощью Flash создаются сокеты (соединения в сети), можно работать с мультимедиа, хранить объекты, которым не требуется посылать запросы на сервер. Существуют удобные графические средства разработки для Flash.

Если сравнивать по недостаткам Flash и JavaScript, объекты которого сильно отличаются, то основным недостатком Flash является плохая его индексированность поисковиками. Это происходит потому, что поисковики ходят по Также отсутствует возможность выделения текста, находящегося в контейнере Flash.

Silverlight, Vbscript, JavaFX, XUL

Для того чтобы дополнить возможности JavaScript при построении интерфейсов и области коммуникаций, используются технологии Silverlight, Vbscript, JavaFX, XUL.
Они используются все равно более редко, чем Flash и JavaScript. Для выделения особенностей каждой из них можно сказать следующее:

XUL - используют при описании десктоп-приложений и интерфейсов. Но возможно только в случае создания программы под Mozilla.

JavaFX - работает на компьютере только с Java, так как является дополнением к этому языку.

Vbscript - был разработан корпорацией Microsoft. Основой послужил Visual Basic. Этот язык не развивается никак, в наши дни почти не используется, по возможностям уступает JavaScript.

Silverlight - был разработан компанией Microsoft в качестве конкурента для Flash. Он также не имеет большой популярности, т.к. строки JavaScript могут предоставить гораздо больше сценариев страницы.

Как включить JavaScript и что такое JavaScript error

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

Как включается JavaScript в Mozilla Firefox

Если пользователь работает в Mozilla, нужно зайти в «Инструменты», далее в «Настройки». Затем на вкладке «Содержимое» нужно поставить галочку напротив надписи «Использовать JavaScript».

Как включается JavaScript в Google Chrom

Для включения или отключения JavaScript в этом браузере требуется следующая последовательность действий: «Настройка и управление Google Chrom», «Параметры», «Расширенные», «Личные данные (настройки содержания)», «JavaScript». Разрешить всем сайтам использование JavaScript (рекомендуется).

Как включается JavaScript в Opera

Для включения или отключения JavaScript в этом браузере требуется выполнить следующее:

Нажать клавишу F12.

Выбор пункта “Включить JavaScript”.

Как включается JavaScript в IE ("Интернет Эксплорер")

Для включения или отключения JavaScript в "Интернет Эксплорере", требуется сделать следующее: «Сервис», «Свойства обозревателя», вкладка "Безопасность", «Выбираем зону Интернет», кнопка "Другой", пункт "Сценарии", «Разрешить сценарии».

JavaScript в ВК

Для решения этой проблемы, требуется исправление JavaScript error в сети «ВКонтакте».

Что такое ошибка JavaScript VK?

Пользователь посетил свою страницу в соцсети и попробовал запустить видео- или аудиофайл, но после этого обнаружил в левом верхнем углу надпись «JavaScript error: initAddMedia is not defined». Это сообщение появляется при ошибке
« initAddMedia».

Для начала требуется зайти в «Пуск», «Мой Компьютер» и папку Windows. Потом переход в раздел system32 и в папку driver. Затем в папку etc.

Посреди небольшого количества файлов в этой папке требуется выбрать файл hosts.
Затем этот файл открывается с помощью «Блокнота». Это выглядит так: на нужно нажать правой кнопкой мыши и выбрать «Открыть с помощью». Далее можно выбрать «Текстовый редактор WordPad».

После открытия этого файла требуется глянуть на файл с записью 127.0.0.1 localhost. Любые другие записи являются лишними и только затрудняют и блокируют стабильную работу аудио- и видеофайлов. Нужно удалить полностью всю информацию из файла и скопировать только эту надпись 127.0.0.1 localhost. Далее требуется нажать «Сохранить» и перезагрузить компьютер. При последующем посещении страницы "ВКонтакте" все будет работать нормально.

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

Современные браузеры в обязательном порядке имеют поддержку языка JavaScript.

Команды JavaScript добавляются на веб-страницы с помощью тега , причём исполняемый скрипт нужно вносить в окне Текст CMS WordPress. Контейнеров в одном документе может быть сколько угодно. Атрибут «type=’text/javascript’» указывать необязательно, так как по умолчанию стоит javascript.

Вот пример:


document . write («Вывод текста стандартной командой JavaScript.» );

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

Осваивая язык JavaScript, нужно прежде всего освоить комментарии, которые на первых порах использования языка следует использовать особенно часто.

JavaScript допускает короткие комментарии — комментарии, длина которых не превышает длину строки. Всё, что находится после двух символов // до конца строки, будет являться коротким комментарием. Вот два примера коротких комментариев:

// 1. Команда ниже отображает Абзац, выводимый жирным шрифтом
document . write («» );

document . write ( Hello, World! ); // 2. Вывод курсивом строки Hello, World!

Кроме того, JavaScript допускает многострочные комментарии — комментарии, которые распространяются на несколько строк. Вот пример такого комментария:

/*
Первая команда выводит абзац жирным шрифтом,
а вторая команда выводит абзац курсивом
*/
document . write («

Абзац, выводимый жирным шрифтом.

» ); document . write («

Абзац, выводимый курсивом.

» );

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

Скрипт этого языка можно как внедрять непосредственно в HTML-код страницы, так и выносить в файл, который может вызываться разными страницами. Вот пример вызова файла со скриптом:

Если указан атрибут src=»… «, то содержимое тега игнорируется, то есть в одном теге script нельзя одновременно подключить внешний скрипт и указать код, поэтому нужно выбирать: script либо содержит src, либо содержит код. При необходимости просто код вносим в другой script.

Кстати, WordPress версии 4.0 не признаёт код JavaScript в HTML-коде страниц и портит его, пряча код JavaScript за