Виконання коду JavaScript

Коли браузер отримує веб-сторінку з кодом html і javascript, то він її інтерпретує. Результат інтерпретації у вигляді різних елементів - кнопок, полів введення, текстових блоків тощо, ми бачимо перед собою в браузері. Інтерпретація веб-сторінки відбувається послідовно зверху вниз.

Коли браузер зустрічає на веб-сторінці елемент <script> з кодом javascript, то вступає в дію вбудований інтерпретатор javascript. І поки він не закінчить свою роботу, далі інтерпретація веб-сторінки не йде.

Розглянемо невеликий приклад і для цього змінимо сторінку index.html з минулої теми таким чином:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>ITshnyk</title>
    <script>
        document.write("Початковий текст");
    </script>
</head>
<body>
    <h2>Перший заголовок</h2>
    <script>
        document.write("Перший текст");
    </script>
    <h2>Другий заголовок</h2>
    <script>
        document.write("Другий текст");
    </script>
</body>
</html>

Тут три вставки коду javascript - один у секції <head> і по одному після кожного заголовка.

Відкриємо веб-сторінку в браузері і ми побачимо, що браузер послідовно виконує код веб-сторінки:

Тут ми бачимо, що спочатку виконується код javascript із секції head, який виводить на веб-сторінку деякий текст:

document.write("Початковий текст");

Далі виводиться перший стандартний html-елемент <h2>:

<h2>Перший заголовок</h2>

Після цього виконується друга вставка коду на javascript:

document.write("Перший текст");

Потім виводиться другий html-елемент <h2>:

<h2>Другий заголовок</h2>

І наприкінці виконується остання вставка коду на javascript:

document.write("Другий текст");

Після цього браузер закінчить інтерпретацію веб-сторінки, і веб-сторінка виявиться повністю завантаженою. Цей момент дуже важливий, оскільки може впливати на продуктивність. Тому нерідко вставки коду javascript йдуть перед закриваючим тегом </body>, коли основна частина веб-сторінки вже завантажена в браузері.

Основи синтаксису javascript

Перш ніж переходити до детального вивчення основ мови програмування javascript, розглянемо деякі базові моменти її синтаксису.

Код javascript складається з інструкцій. Кожна інструкція представляє деяку дію. І для відокремлення інструкцій одна від одної в javascript після інструкції ставиться крапка з комою:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>ITshnyk</title>
</head>
<body>
    <script>
        document.write("2 + 5 =  "); var sum = 2 + 5; document.write(sum); 
    </script>
</body>
</html>

Тут у коді javascript визначено три інструкції:

document.write("2 + 5 = ")

Виводить на сторінку текст "2 + 5 = "

var sum = 2 + 5;

За допомогою оператора var визначає змінну sum, яка дорівнює сумі 2 + 5

document.write(sum);

Виводить на сторінку значення змінної sum (тобто суму 2 + 5)

Однак сучасні браузери цілком можуть розрізняти окремі інструкції, якщо вони просто розташовуються на окремих рядках без крапки коми:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>ITshnyk</title>
</head>
<body>
    <script>
        document.write("2 + 5 =  ")
        var sum = 2 + 5
        document.write(sum)
    </script>
</body>
</html>

Але щоб поліпшити читабельність коду і знизити кількість можливих помилок, рекомендується визначати кожну інструкцію javascript на окремому рядку і завершувати її крапкою з комою, як у першому варіанті.

Коментарі

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

Коментарі можуть бути однорядковими, для яких використовується подвійний слеш:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>ITshnyk</title>
</head>
<body>
    <script>
        // виводимо повідомлення
        document.write("2 + 5 =  ")
        // оголошуємо змінну і присвоюємо їй суму чисел 2 і 5
        var sum = 2 + 5
        // виводимо значення змінної sum
        document.write(sum)
    </script>
</body>
</html>

Крім однорядкових коментарів можуть використовуватися й багаторядкові. Такі коментарі укладаються між символами /*текст коментаря*/. Наприклад:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>ITshnyk</title>
</head>
<body>
    <script>
        /*  Приклад арифметичної операції
        і визначення змінної
        в коді JavaScript */
        document.write("2 + 5 =  ")
        var sum = 2 + 5
        document.write(sum)
    </script>
</body>
</html>