Відмінності між версіями «2 Основи JavaScript»

Матеріал з Wiki TNEU
Перейти до: навігація, пошук
 
Рядок 1: Рядок 1:
Мова програмування JavaScript (JS) надає веб-сторінкам можливість реагувати на дії користувача і перетворювати статичні сторінки в динамічні, так, щоб сторінки буквально "оживали" на очах.
+
'''JavaScript''' — назва реалізації стандарту мови програмування, базується на принципах прототипного програмування. Найпоширеніше і найвідоміше застосування мови — написання сценаріїв для веб-сторінок, але, також, використовується для впровадження сценаріїв керування об’єктами вбудованими в інші програми.
Дана мова програмування є клієнтським (виконується на стороні користувача, без використання сервера). Якщо ви націлені на вивчення даного клієнтського мови, то кращий спосіб зробити це - почати програмувати на ньому.
+
  
'''Роль змінних'''
 
  
У мові програмування JavaScript, як і в інших мовах, існують змінні, в яких зберігаються дані таким чином, щоб пізніше ви могли їх використовувати і маніпулювати ними. Припустимо, ви захотіли купити продукти в магазині. Ви йдете в гастроном і берете візок. Вибираєте те, що хочете купити і складіруете у візок. А тепер уявіть собі, що роль змінної грає ця сама візок. Ви можете доповнити її продуктами або передумати купувати і викласти що то з неї, тим самим ви зміните її значення.
+
'''Про мову'''
  
'''Створення змінних'''
+
JavaScript розроблений у компанії Netscape. На сьогоднішній день підтримується більшістю браузерів. Текст програми включається безпосередньо в HTML-документ і інтерпретується самим браузером (точніше, вбудованим у браузер рушієм JavaScript). Застосовується в основному для часткової автоматизації обробки і маніпуляції даними, які використовує сторінка.
 +
JavaScript має C-подібний синтаксис, але в порівнянні з мовою Сі має такі корінні відмінності:
  
У мові JavaScript щоб оголосити змінну потрібно написати ключове слово var, поставити пробіл і написати назву змінної. Намагайтеся вибирати ім'я змінної так, щоб зрозуміти сенс збереженої інформації.
+
* об’єкти, з можливістю інтроспекції і динамічної зміни типу через механізм прототипів;
  var number; // number от английского число
+
  
'''Оператори'''
+
* функції як об’єкти першого класу;
  
Оператори використовуються тоді, коли потрібно присвоїти нове значення. В залежності від класу вирішуваних завдань, існують різні типи операторів (оператори порівняння, порозрядного, рядкові, логічні та інші). Наприклад, створимо нову змінну name (від англ. - Ім'я) і привласнимо їй значення "Den"
+
* обробка винятків;
  
  var name = "Den"; // використовуємо оператор присвоєння (=)
+
* автоматичне приведення типів;
  
У даному прикладі ми використовуємо оператор присвоювання у вигляді знака рівності (=). Це найпоширеніший оператор в програмуванні. Ті значення, до яких застосовується оператор, зазвичай називають операндами, тобто в нашому випадку це змінна name і значення "Den". Всі разом називається виразом. У більшості випадках вираз записується в один рядок, яке закінчується крапкою з комою (;). З таких виразів можна писати програми на JavaScript, вони дуже схожі з пропозиціями в тексті.
+
* автоматичне прибирання сміття;
 +
 
 +
* анонімні функції.
 +
 
 +
JavaScript містить декілька вбудованих об’єктів: Global, Object, Error, Function, Array, String, Boolean, Number, Math, Date, RegExp. Крім того, JavaScript містить набір вбудованих операцій, які, строго кажучи, не обов’язково є функціями або методами, а також набір вбудованих операторів, що управляють логікою виконання програм. Синтаксис JavaScript в основному відповідає синтаксису мови Java (тобто, зрештою, успадкований від C), але спрощений порівняно з ним, щоб зробити мову сценаріїв легкою для вивчення. Так, приміром, декларація змінної не містить її типу, властивості також не мають типів, а декларація функції може стояти в тексті програми після неї.
 +
 
 +
 
 +
'''Використання в HTML'''
 +
 
 +
При використанні в рамках технології DHTML JavaScript код включається в HTML-код сторінки і виконується інтерпретатором, вбудованим в браузер. Код JavaScript вставляється в теги <script></script> з обов’язковим по специфікації HTML 4.01 атрибутом type="text/javascript", хоча в більшості браузерів мова сценаріїв за умовчанням саме JavaScript.
 +
Скрипт, що виводить модальне вікно з класичним написом «Hello, World!» усередині браузера:
 +
 
 +
<script type="text/javascript">
 +
  alert('Hello, World!');
 +
</script>
 +
 
 +
Є ще одна можливість підключення JavaScript — написати скрипт в окремому файлі, а по тому підключити його за допомогою конструкції:
 +
<script type="text/javascript" src="Шлях_до_файла_зі_скриптом"></script>
 +
 
 +
 
 +
'''Зневадження'''
 +
 
 +
При розробці великих і нетривіальних веб-застосунків з використанням JavaScript, критично важливим є доступ до інструментів зневадження. Оскільки браузери від різних виробників дещо відрізняються у поведінці JavaScript і реалізації Об'єктної Моделі Документа, треба мати в руках зневаджувач для кожного браузера, якщо веб-застосування орієнтовано на нього.
 +
 
 +
На даний час Internet Explorer, Firefox, Opera, Google Chrome та Safari мають зневаджувачі для себе.
 +
 
 +
Internet Explorer має три звеваджувача для себе: Microsoft Visual Studio є найпотужнішим з цих трьох, слідом йде Microsoft Script Editor (компонента Microsoft Office), і нарешті існує безплатний Microsoft Script Debugger з базовими функціями. Веб-застосування для Firefox допоможе привести до розуму додаток Firebug (зручно вбудований безпосередньо в браузер), або давніший відладчик Venkman, котрий також працює з браузером Mozilla. Drosera — це зневаджувач з WebKit engine, що супроводжує Apple Safari.
 +
 
 +
Також існують кілька інструментів, як вільних, наприклад JSLint, інструмент перевірки якості коду, що сканує JavaScript програму, шукаючи проблеми коду, так і комерційних продуктів типу інструменту з назвою JavaScript Debugger.
 +
 
 +
Оскільки JavaScript є інтерпретатором, без строгої типізації, і може виконуватися в різних середовищах, кожне зі своїми власними особливостями сумісності, програміст має бути дуже уважним, і повинен перевіряти, що його код виконується як очікується в широкому переліку можливих конфігурацій. Дуже часто трапляються випадки, коли скрипт, що чудово працює в одному середовищі, видає некоректні результати в іншому.
 +
 
 +
Кожен блок сценарію інтерпретатор розбирає окремо. На веб-сторінках, коли треба комбінувати блоки JavaScript та HTML, синтаксичні помилки найти легше, якщо тримати функції сценарію в окремому блоці коду, або (ще краще) використовувати багато малих пов’язаних .js файлів. В такий спосіб синтаксична помилка не спричинятиме «падіння» цілої сторінки, і можна надати допомогу, елегантно вийшовши зі сторінки.

Поточна версія на 16:32, 20 червня 2013

JavaScript — назва реалізації стандарту мови програмування, базується на принципах прототипного програмування. Найпоширеніше і найвідоміше застосування мови — написання сценаріїв для веб-сторінок, але, також, використовується для впровадження сценаріїв керування об’єктами вбудованими в інші програми.


Про мову

JavaScript розроблений у компанії Netscape. На сьогоднішній день підтримується більшістю браузерів. Текст програми включається безпосередньо в HTML-документ і інтерпретується самим браузером (точніше, вбудованим у браузер рушієм JavaScript). Застосовується в основному для часткової автоматизації обробки і маніпуляції даними, які використовує сторінка. JavaScript має C-подібний синтаксис, але в порівнянні з мовою Сі має такі корінні відмінності:

  • об’єкти, з можливістю інтроспекції і динамічної зміни типу через механізм прототипів;
  • функції як об’єкти першого класу;
  • обробка винятків;
  • автоматичне приведення типів;
  • автоматичне прибирання сміття;
  • анонімні функції.

JavaScript містить декілька вбудованих об’єктів: Global, Object, Error, Function, Array, String, Boolean, Number, Math, Date, RegExp. Крім того, JavaScript містить набір вбудованих операцій, які, строго кажучи, не обов’язково є функціями або методами, а також набір вбудованих операторів, що управляють логікою виконання програм. Синтаксис JavaScript в основному відповідає синтаксису мови Java (тобто, зрештою, успадкований від C), але спрощений порівняно з ним, щоб зробити мову сценаріїв легкою для вивчення. Так, приміром, декларація змінної не містить її типу, властивості також не мають типів, а декларація функції може стояти в тексті програми після неї.


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

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

<script type="text/javascript">
 alert('Hello, World!');
</script>

Є ще одна можливість підключення JavaScript — написати скрипт в окремому файлі, а по тому підключити його за допомогою конструкції:

<script type="text/javascript" src="Шлях_до_файла_зі_скриптом"></script>


Зневадження

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

На даний час Internet Explorer, Firefox, Opera, Google Chrome та Safari мають зневаджувачі для себе.

Internet Explorer має три звеваджувача для себе: Microsoft Visual Studio є найпотужнішим з цих трьох, слідом йде Microsoft Script Editor (компонента Microsoft Office), і нарешті існує безплатний Microsoft Script Debugger з базовими функціями. Веб-застосування для Firefox допоможе привести до розуму додаток Firebug (зручно вбудований безпосередньо в браузер), або давніший відладчик Venkman, котрий також працює з браузером Mozilla. Drosera — це зневаджувач з WebKit engine, що супроводжує Apple Safari.

Також існують кілька інструментів, як вільних, наприклад JSLint, інструмент перевірки якості коду, що сканує JavaScript програму, шукаючи проблеми коду, так і комерційних продуктів типу інструменту з назвою JavaScript Debugger.

Оскільки JavaScript є інтерпретатором, без строгої типізації, і може виконуватися в різних середовищах, кожне зі своїми власними особливостями сумісності, програміст має бути дуже уважним, і повинен перевіряти, що його код виконується як очікується в широкому переліку можливих конфігурацій. Дуже часто трапляються випадки, коли скрипт, що чудово працює в одному середовищі, видає некоректні результати в іншому.

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

Особисті інструменти
Простори назв

Варіанти
Дії
Навігація
Інструменти