ECMAScript

Матеріал з Словник з інформатики
Перейти до: навігація, пошук

ECMAScript

ECMAScript — стандарт мови програмування,реалізаціями стандарту є мови JavaScript ActionScript, які широко використовується у Вебі. 

'Історія ECMAScript ред


Мова виникла на основі декількох технологій, найвідомішими з яких є мови JavaScript і JScript. Розробка першої редакції специфікації почалася в листопаді 1996 року. Ухвалення специфікації відбулося в червні 1997 року. Будучи відправленої в ISO / IEC JTC 1 для прийняття за процедурою Fast-Tracking, вона послужила основою міжнародного стандарту ISO / IEC 16262. У червні 1998 року загальними зборами ECMA була прийнята друга редакція ECMA-262, відповідна ISO / IEC 16262. Третя редакція специфікації відрізнялася від попередньої введенням підтримки регулярних виразів, поліпшенням підтримки рядків, введенням нових керуючих конструкцій, механізму виключень, форматування при чисельному введенні і деякі інші зміни



Семантика і синтаксис ред


Типи даних Примітивні типи даних У ECMAScript підтримуються п'ять примітивних типів даних: числовий (англ. Number), строковий (англ. String), логічний (англ. Boolean), нульовий (англ. Null), невизначений (англ. Undefined)



Функції ред


Основна стаття: Функція (програмування) Функції в ECMAScript є об'єктами . Конструктор, за допомогою якого вони створюються - Function (). Функції, як і будь-які інші об'єкти, можуть зберігатися в змінних, об'єктах і масивах, можуть передаватися як аргументи в інші функції і можуть повертатися функціями. Функції, як і будь-які інші об'єкти, можуть мати властивості. Суттєвою специфічною рисою функцій є те, що вони можуть бути викликані .



Використання в HTML ред

При використанні в рамках технології DHTML ECMAScript код включається в HTML-код сторінки і виконується інтерпретатором, вбудованим в браузер . Код JavaScript вставляється в теги <script></script> з обов'язковим по специфікації HTML 4.01 атрибутом type="text/javascript", хоча в більшості браузерів мова сценаріїв за умовчанням саме JavaScript. Скрипт, що виводить модальне вікно з класичним написом «Hello, World!» усередині браузера: <script type="text/javascript">

 alert('Hello, World!');

</script> Слідуючи концепції інтеграції JavaScript в існуючі системи, браузери підтримують включення скрипта, наприклад, в значення атрибуту події:

<a href="delete.php" onclick="return confirm('Ви впевнені?');">Видалити</a>

Тут при натисненні на посилання функція confirm('Ви впевнені?'); викликає модальне вікно з написом «Ви впевнені?», а return false; блокує перехід за посиланням. Зрозуміло, цей код працюватиме тільки якщо в браузері є і включена підтримка JavaScript, інакше перехід за посиланням відбудеться без попередження. Є і третя можливість підключення JavaScript — написати скрипт в окремому файлі, а по тому підключити його за допомогою конструкції: <script type="text/javascript" src="http://Шлях_до_файла_зі_скриптом"></script>



Зневадження ред


При розробці великих і нетривіальних веб-застосунків з використанням JavaScript, критично важливим є доступ до інструментівзневадження. Оскільки браузери від різних виробників дещо відрізняються у поведінці (в тому числі і в Об'єктній Моделі Документа, треба мати в руках зневаджуючі для кожного браузера, якщо веб-застосунок орієнтовано на нього. Firefox, Google Chrome,Opera та Safari мають вбудовані зневаджувачі під себе.

Також існують кілька інструментів, як вільних, наприклад JSLint інструмент перевірки якості коду, що сканує JavaScript програму, шукаючи проблеми коду, так і комерційних продуктів типу інструменту з назвою JavaScript Debugger. Оскільки ECMAScript є інтерпретатором, без строгої типизації, і може виконуватися в різних середовищах, кожне зі своїми власними особливостями сумісності, програміст має бути дуже уважним, і повинен перевіряти, що його код виконується як очікується в широкому переліку можливих конфігурацій. Дуже часто трапляються випадки, коли скрипт, що чудово працює в одному середовищі, видає некоректні результати в іншому. Кожен блок сценарію інтерпретатор розбирає окремо. На веб-сторінках, коли треба комбінувати блоки JavaScript та HTML, синтаксичні помилки знайти простіше, якщо тримати функції сценарію в окремому блоці коду, або (ще краще) використовувати багато малих пов'язаних .jsфайлів. В такий спосіб синтаксична помилка не спричинятиме «падіння» цілої сторінки, і можна надати допомогу, елегантно вийшовши зі сторінки.



Виноски ред

1. [Standard ECMA-262 ECMAScript® 2015 Language Specification]
2[.JScript development in Microsoft Office 11 (MS InfoPath 2003)]
3.[Introducing Drosera — Surfin' Safari]
4.[JSLint help page]

--Дмитрій (обговорення) 22:51, 14 травня 2016 (EEST)