Виклик операторів з привласненням
Часто потрібно застосувати оператор до змінної і зберегти результат в ній же, наприклад:
n = n + 5;
d = d * 2;
Цей запис можна вкоротити за допомогою суміщених операторів: + =, - =, * =, / =,>> =, << =, >>> =, & =, | =, ^ =, ось так:
var n = 2;
n + = 5; // Тепер n = 7 (працює як n = n + 5) n * = 2; // Тепер n = 14 (працює як n = n * 2)
alert (n); // 14
Всі ці оператори мають в точності такий же пріоритет, як звичайне присвоювання, тобто виконуються після більшості інших операцій.
10. Оператор кома
Кома теж є оператором. Її можна викликати явно, наприклад:
a = (5, 6);
alert (a);
Кома дозволяє перераховувати вираження, розділяючи їх комою ','. Кожне з них - обчислюється і відкидається, за винятком останнього, яке повертається. Кома - єдиний оператор, пріоритет якого нижче присвоювання. У виразі a = (5,6) для явного завдання пріоритету використані дужки, інакше оператор '=' виконався б до коми ',', Вийшло б (а = 5), 6.
Зазвичай він використовується в складі більш складних конструкцій, щоб зробити кілька дій в одному рядку. наприклад:
// Три операції в одному рядку
for (a = 1, b = 3, c = a * b; a <10; a ++) {
...
}
Такі трюки використовуються в багатьох JavaScript-фреймворку для укорочення коду.
Приклад з масивом і циклом:
<! DOCTYPE html> <html>
<Body>
<Script> var i;
var cars = new Array (); cars [0] = "Saab"; cars [1] = "Volvo"; cars [2] = "BMW";
for (i = 0; i <cars.length; i ++)
{
document.write (cars [i] + "<br>");
}
</ Script>
</ Body>
</ Html>
Взаємодія з користувачем: alert, prompt, confirm
У цьому розділі ми розглянемо базові UI операції: alert, prompt і confirm, які дозволяють працювати з даними, отриманими від користувача.
Оператор alert
Синтаксис: alert (повідомлення)
alert виводить на екран вікно з повідомленням і призупиняє виконання скрипта, поки користувач не натисне «ОК».
alert ( "Привіт");
Вікно повідомлення, яке виводиться, є модальним вікном. Слово «модальное» означає, що відвідувач не може взаємодіяти зі сторінкою, натискати інші кнопки і т.п., поки не розбереться з вікном. В даному випадку - поки не натисне на «OK».
оператор prompt
Функція prompt приймає два аргументи:
result = prompt (title, default);
Вона виводить модальне вікно з заголовком title, полем для введення тексту, заповненим рядком за замовчуванням default і кнопками OK / CANCEL.
Користувач повинен або щось ввести і натиснути OK, або скасувати введення кліком на CANCEL або натисканням ESC на клавіатурі.
Виклик prompt повертає те, що ввів відвідувач - рядок або спеціальне значення null, якщо введення скасований.
Як і у випадку з alert, вікно prompt модальное.
var years = prompt ( 'Скільки вам років?', 100);
alert ( 'Вам' + years + 'років!')
Завжди вказуйте default
Взагалі, другий default може бути відсутнім. Однак при цьому IE вставить в діалог значення за замовчуванням "undefined".
Запустіть цей код в IE, щоб зрозуміти про що мова:
var test = prompt ( "Тест");
Тому рекомендується завжди вказувати другий аргумент:
var test = prompt ( "Тест", ''); // <- Так краще
Оператор confirm
синтаксис:
result = confirm (question);
confirm виводить вікно з питанням question з двома кнопками: OK і CANCEL.
Результатом буде true при натисканні OK і false - при CANCEL (Esc). Наприклад:
var isAdmin = confirm ( "Ви - адміністратор?");
alert (isAdmin);
Місце, де виводиться модальне вікно з питанням, і зовнішній вигляд вікна вибирає браузер. Розробник не може на це впливати. З одного боку - це недолік, тому що не можна вивести вікно в своєму дизайні. З іншого боку, перевага цих функцій в порівнянні з іншими, більш складними методами взаємодії, які ми вивчимо в подальшому - як раз в тому, що вони дуже прості.
Це найпростіший спосіб вивести повідомлення або отримати інформацію від відвідувача. Тому їх використовують в тих випадках, коли простота важлива, а всякі «красивості» особливої ролі не грають.
Структура звіту з лабораторної роботи:
Титульна сторінка
Відповіді на теоретичні запитання
Лістинг розроблених сторінок
Скріншоти, що підтверджують виконання поставлених завдань
Висновки за результатами виконання практичних завдань.
Контрольні запитання:
Що таке JavaScript? Чим вона відрізняється від Java?
Які типи даних існіють в JavaScript?
Яким чином скрипти можна під’єднати до сторінки?
Тематика індивідуальних завдань (обирається згідно номера студента в журналі академічної групи):
1 |
Розробити сторінку з календарем поточного місяця. Поточну дату виділити окремим форматом. |
2 |
Розробити сторінку для відображення годинника з будильником (точність до секунди). Користувач має можливість самостійно задавати час дзвінка. |
3 |
Розробити сторінку органайзер. На сторінці повинно відображатись кількість днів, годин, хвилин до заданої користувачем дати. |
4 |
Розробити сторінку з грою в «хрестики» – «нолики». Передбачити варіанти гри людина-людина та людина-комп’ютер. |
5 |
Розробити сайт підбору кольорів для підтримки дизайнерів. На сайті повинна бути присутня палітра кольорів (на менше 100 кольорів), при наведенні на яку фон сторінки повинен змінювати свій колір на обраний. |
6 |
Написати сайт-калькулятор. Калькулятор повинен виконувати основні математичні функції, а також sin, cos, абсолютне значення тощо. |
7 |
Реалізувати на сайті скрипт для переслідувача курсора. В якості переслідувача виступає деяка картинка, що повинна наближатись до поточного значення курсора з заданою швидкістю. При зміні місця розташування курсора, траекторія руху переслідувача повинна корегуватись. |
8 |
Розробити сайт для відображення пори року. На сайті користувач обирає відповідну пору року і на сторінці повинні з’являтись відповідні падаючі об’єкти. Наприклад, якщо була обрана осінь, то падаюче листя, зима – сніжинки тощо. |
9 |
Розробити сайт аналізатор масивів. В даному сайті передбачити два алгоритми аналізу масивів (довжина масивів довільна): (а) після аналізу виводяться всі унікальні числа які знаходяться в масиві; (б) вивести всі числа які є одночасно і в масиві А і в масиві Б. |
10 |
Розробити сайт сортування масивів. В даному сайті передбачити такі алгоритми сортування масивів (довжина масивів довільна): (а) по зростанню; (б) по спаданню. Додатково передбачити можливість виключення з масиву повторюваних елементів |
11 |
Розробити сайт аналізатор масивів. В даному сайті передбачити два алгоритми аналізу масивів (довжина масивів довільна): (а) визначення максимальної довжини додатньої послідовності елементів в масиві; (б) визначення максимальної довжини відємної послідовності елементів в масиві. |
12 |
За допомогою стриптів організуйте показ слайд шоу. Затримки під час зміни картинок задаються користувачем |
13 |
Напишіть сайт –калькулятор, що буде переводити одиниці вимірювань, що знаходяться в системі СІ в їх більші (менші) значення. Наприклад при виборі довжини: кілометри, метри, дециметри, сантиметри, міліметри тощо. |
14 |
Написати скрипт, який буде визначати найчастіше повторюване слово з тексту, який знаходиться в textarea. Визначене слово та кількість його повторень вивести на екран |
15 |
Розробити сторінку органайзер. На сторінці повинно відображатись кількість днів, годин, хвилин та секунд від заданої користувачем дати та часу. |
