
- •1. Основні поняття
- •1.1. Сім варіацій на тему "Hello, world! "
- •1.1.1. Варіація перша: сама проста
- •1.1.2. Варіація друга: із секретним вихідним текстом
- •1.1.3. Варіація третя: із переменной і функціями
- •1.1.4. Варіація четверта: створення сторінки "на літу"
- •1.1.5. Варіація п'ята: із діалоговою панеллю
- •1.1.6. Варіація шоста: опрацювання події
- •1.1.7. Варіація сьома: із визначенням типу браузера
- •1.2. Перемінні в JavaScript
- •1.2.1. Оголошення перемінних
- •1.2.2. Присвоєння значення перемінним
- •1.2.3. Типи даних
- •1.2.4. Перетворення типів даних
- •1.3. Оператори мови JavaScript
- •1.3.1. Унарные оператори
- •1.3.2. Бинарные оператори
- •1.3.3. Оператори для роботи з окремими бітами
- •1.3.4. Оператори зсуву
- •1.3.5. Оператори відношення
- •1.3.6. Логічні оператори
- •1.3.7. Оператор присвоювання
- •1.3.8. Умовні оператори
- •1.3.9. Оператори циклу
- •1.3.10. Інші оператори
- •1.3.11. Старшинство операторів JavaScript
- •1.3.12. Функції в мові сценаріїв JavaScript
- •1.4. Приклади використання операторів циклу
- •2. Класи і об'єкти
- •2.1. Три типи об'єктів «JavaScript
- •2.1.1. Умонтовані об'єкти
- •2.1.2. Об'єкти браузера
- •2.1.3. Об'єкти на базі класів, утворюваних програмістом
- •2.2. Масиви в JavaScript
- •2.3.1. Властивості об'єкта window
- •2.3.2. Методи об'єкта window
- •2.4. Сценарії, що працюють з об'єктами window
- •2.4.1. Як закрити вікно браузера
- •2.4.2. Открываем нове окно
- •2.4.3. Текст , що біжить , у рядку стани браузера
- •2.4.4. Обмеження часу реакції користувача
- •2.4.5. Завантаження документа html у вікно браузера
- •2.5.1. Властивості об'єкта document
- •2.5.2. Методи об'єкта document
- •2.5.3. Колірне оформлення документа
- •2.5.4. Посилання і мітки в документі
- •2.6. Умонтований клас Math
- •2.6.1. Властивості
- •2.6.2. Методи
- •2.7. Умонтований клас Date
- •2.7.1. Конструктори класу Date
- •2.8. Умонтовані функції
- •2.9. Плавна зміна цвіту фона документа html
- •3. Робота з формами
- •3.1. Ієрархія об'єктів у формах
- •3.2. Форма і її властивості
- •3.2.2. Властивості об'єкта form
- •3.3. Об'єкти, що входять до складу форм
- •3.3.1. Кнопка button
- •3.3.2. Перемикач checkbox
- •3.3.3. Перемикач radio
- •3.3.4. Приклад форми з перемикачами
- •3.3.5. Список select
- •3.3.6. Приклади сценаріїв, що працюють із списками
- •3.3.7. Однострочное поле text
- •3.3.8. Перевірка анкети
- •3.3.9. Многострочное поле textarea
- •3.3.10. Приклад сценарію, що заповнює поле textarea
- •3.3.11. Однострочное поле password
- •3.3.12. Запровадження ідентифікатора і пароля
- •3.4. Перевірка заповнення форми
- •3.5. Шестнадцатеричный калькулятор
- •3.3.6. Електронні часи
- •4. Фреймы
- •4.1. Файл опису фреймов
- •4.2. Взаємодія між фреймами
- •4.2.1. Десятично-шестнадцатеричный перетворювач
- •4.2.2. Відображення декількох документів html
- •5. Растровые зображення
- •5.1. Растровое зображення як об'єкт
- •5.2. Динамічна заміна растровых зображень
- •5.2.1. Зміна зовнішнього вигляду графічних посилань
- •5.2.2. Створення анімаційних зображень
- •5.2.3. Чекання завантаження всіх зображень
- •6. Взаємодія з аплетами java
- •6.1. Вбудовування аплета Java у документ html
- •6.2. Виклик методів аплета Java із сценарію JavaScript
- •6.3. Доступ до полів аплета Java із сценарію JavaScript
- •6.4. Динамічне завантаження аплетов Java
- •7. Застосування cookie
- •7.1. Виконання основних операцій із cookie
- •7.1.1. Створення cookie
- •7.1.2. Одержання значення cookie
- •7.1.3. Зміна значення параметра cookie
- •7.1.4. Видалення cookie
- •7.1.5. Обмеження на використання cookie
- •7.2. Декілька прикладів використання cookie
- •7.2.1. Фіксація повторних провідин сторінки
- •7.2.2. Записна книжка Cookies Notepad
- •7.2.3. Настроювання параметрів документа html
- •7.2.5. Одержання cookie розширенням серверу Web
- •7.2.6. Лічильник провідин на базі cookie і програми cgi
- •7.3. Настроювання браузера для роботи з cookie
1.3.7. Оператор присвоювання
Оператор присвоювання застосовується для присвоювання значень перемінним. У мові сценаріїв JavaScript припускається комбінування цього оператора з іншими для зміни вмісту перемінних.
Нижче перераховані всі можливі комбінації оператора присвоювання й інших операторів:
Оператор Опис
= Просте присвоювання
+= Збільшення чисельного значення або злиття рядків
-= Зменшення чисельного значення
*= Множення
/= Розподіл
%= Вычисление остатка от деления
>>= Зсув управо
>>>= Зсув управо з заповненням що звільняються розрядів нулями
<<= Зсув уліво
| = АБО
&= И
^= щО ВИКЛЮЧАЄ АБО
Приклад застосування оператора += для збільшення вмісту числовий перемінної.
Спочатку вирішимо цю задачу без використання даного оператора. Нижче оголошене перемінна з ім'ям nCounter і привласнене їй початкове значення 1, а потім збільшене це значення на 5:
var nCounter = 1;
nCounter = nCounter + 5;
Тепер зробимо те ж саме, але по-другому:
var nCounter = 1;
nCounter += 5;
Як очевидно, другий засіб коротше першого.
Для того щоб зрушити вміст перемінної на трьох розряду вправо, можна скористатися оператором >>=, як це зроблено в такому фрагменті вихідного тексту:
nCounter >>= 3;
Результат при цьому буде такий же, як і при виконанні такого рядка:
nCounter = nCounter >> 3;
1.3.8. Умовні оператори
Оператор if-else
У JavaScript передбачений умовний оператор if-else, що дозволяє виконувати різні програмні рядки в залежності від умови.
Загальний вид оператора if-else поданий нижче:
if (умова) рядок 1 [else
рядок 2]
Частина оператора, виділена квадратними скобками, є необов'язкової. При виконанні цього оператора оцінюється умова, задана в круглих скобках після ключового слова if. Якщо в результаті оцінки умови утворилося логічне значення true, виконується рядок 1. Якщо ж утворилося значення false, те виконується рядок 2 (у тому випадку, коли вона є присутнім).
Оператор if-else може бути вкладеним. Якщо в рядку 1 або рядку 2 необхідно розташувати декілька операторів, їх варто виділити фігурними скобками:
if (nYourAge < 18)
{
bAccessDenied = true;
szNextPage = "byel8.html";
}
else if (nYourAge > 99)
{
bAccessDenied = true;
szNextPage = "bye99.html";
}
else
{
bAccessDenied = false;
szNextPage = "welcome. html";
}
Спочатку оцінюється умова (nYourAge < 18). Якщо вміст перемінної nYourAge менше 18, перемінної bAccessDenied присвоюється значення true, а перемінної szNextPage - текстовий рядок "byel8.html".
Потім уміст nYourAge дорівнюється з числом 99. Якщо перемінна nYourAge має значення, більше чим 99, у перемінну bAccessDenied записується значення true, а в перемінну szNextPage - текстовий рядок "bye99. html".
Нарешті, якщо жодне з двох умов не було виконано, тобто значення перемінної nYourAge знаходиться в інтервалі від 18 до 99, у перемінну bAccessDenied записується значення false, а в перемінну SzNextPage - текстовий рядок "welcome. html".
Оператор ?
Існує також спеціальний тип умовного оператора, що називається оператором ? :. Цей оператор у загальному виді записується так:
вираження ? рядок 1 : рядок 2
При обчисленні оператора ? : спочатку оцінюється логічне вираження, розташоване в лівій частині. Якщо воно дорівнює true, виконується рядок 1, а якщо false - рядок 2.
Нижче приведений приклад використання умовного оператора ? : для присвоєння значення перемінної bAccessDenied у залежності від умісту перемінної nYourAge:
bAccessDenied =
(nYourAge < 18 || nYourAge > 99) ? true : false;
Якщо значення перемінної nYourAge знаходиться в інтервалі від 18 до 99. перемінної bAccessDenied присвоюється значення true, а якщо воно не потрапляє в цей інтервал - false. Традиційне рішення цієї задачі за допомогою оператора else-if зайняло б більше місця:
if(nYourAge < 18 || nYourAge > 99)
bAccessDenied = true;
else
bAccessDenied = false;
У приведених вище прикладах указувалася складова умова:
(nYourAge < 18 || nYourAge > 99)
Відповідно до таблиці старшинства операторів, що можна знайти нижче в цій главі, оператор || обчислюється після операторів < і >. Для вказівки порядку обчислення можна використовувати скобки:
((nYourAge < 18) || (nYourAge > 99))