ПРАКТИЧЕСКАЯ РАБОТА № 23
Цель: формирование практических умений и навыков использования условного оператора if, оператора выбора switch, циклов в JavaScript.
Задание 1. Создать форму, в которую пользователь вводит 3 значения. Написать сценарий, который определит максимальное из введённых чисел.
Задание 2. Напишите сценарий, вовремя работы которого, при наведении курсора мыши на изображение, оно будет увеличиваться, создавая эффект приближения.
function bigPict() { var w=document.tigr.width; if (w<302) { document.tigr.width=w+10; document.tigr.src="images/tigrenok.jpg" setTimeout("bigPict()", 500) } } |
Примечание: В HTML можно задать размер вставляемого изображения. Если заданные размеры больше или меньше оригинала, то браузер автоматически подгонит оригинал под эти размеры.Пусть картинка: Ширина оригинала 302 пиксела. Мы же хотим,чтобы на странице картинка имела ширину 102 пиксела, а при наведении курсора, увеличивалась до 302 пикселов.Воспользоваться еще стандартной функцией javascript setTimeout, которая вызывает пользовательскую функцию с заданным промежутком времени.
Задание 3. Создать сценарий, который выдает прогноз погоды только на один день, на тот который выберет пользователь.
Использовать оператор выбора switch.
В понедельник будет ветрено, температура воздуха поднимется до +20 градусов Во вторник будет солнечно, температура воздуха поднимется до +25 градусов В среду будет прохладно, температура воздуха опустится до +17 градусов В четверг будет пасмурно, температура воздуха опустится до +10 градусов В пятницу будет облачно, температура воздуха поднимется до +15 градусов В субботу будет ветрено, температура воздуха поднимется до +27 градусов В воскресенье будет ясно, температура воздуха поднимется до +30 градусов |
Задание 4. Написать сценарий, который будет складывать все числа от a до b, (где a и b будут вводиться пользователем в поля формы) и отображать полученный результат.
Задания5*
- Разработайте три задачи с использованием управляющих конструкций JavaScript.
- Напишите скрипт, который запрашивает номер месяца и выводит название времени года.
Контрольные вопросы
1. Синтаксис оператора if в JavaScript.
2. Синтаксис оператора switch в JavaScript.
3. Синтаксис циклов while,do- whileв JavaScript
4. В каких случаях лучше использовать цикл for? Синтаксис for в JavaScript.
5. Операторы continue и break?
Отчет должен содержать:
1. Тему, цель
2. Условие задания. Программный код с сценарием JavaScript. Результаты работы программы.
3. Ответы на контрольные вопросы.
4. Вывод.
На защиту предоставить: файлы (html, js) выполненных заданий в электронном виде и примеры сценариев, записанные в конспект с комментарием.
Для операций над логическими значениями в JavaScript есть || (ИЛИ), && (И) и! (НЕ).Хоть они и называются «логическими», но в JavaScript могут применяться к значениям любого типа и возвращают также значения любого типа (https://learn.javascript.ru/logical-ops).
Конструкция switch (https://learn.javascript.ru/switch). Конструкция switch заменяет собой сразу несколько if.
Синтаксис:switch(x){case'value1':// if (x === 'value1')...[break] case'value2':// if (x === 'value2')...[break] default:...[break]} | - Переменная x проверяется на строгое равенство первому значению value1, затем второму value2 и так далее. - Если соответствие установлено – switch начинает выполняться от соответствующей директивы case и далее, до ближайшего break (или до конца switch). - Если ни один case не совпал – выполняется (если есть) вариант default. При этом case называют вариантами switch. |
Пример: vararg=prompt("Введитеarg?") switch(arg){ case'0': case'1': alert('Один или ноль'); case'2': alert('Два'); break; case3: alert('Никогда не выполнится'); default: alert('Неизвестное значение: '+arg) } - | Исходя из текущего понимания работы switch: - При вводе 0 выполнится первый alert, далее выполнение продолжится вниз до первого break и выведет второй alert('Два'). Итого, двавывода alert. - При вводе 1 произойдёт то же самое. - При вводе 2, switch перейдет к case '2', и сработает единственный alert('Два'). - При вводе 3, switch перейдет на default. Это потому, что prompt возвращает строку '3', а не число. Типы разные. Оператор switch предполагает строгое равенство ===, так что совпадения не будет. |
В JavaScript поддерживаются три вида циклов:
// 1 while(условие){ ... } // 2 do{ ... }while(условие); // 3 for(var i=0;i<10;i++){ ... } | - Переменную можно объявлять прямо в цикле, но видна она будет и за его пределами. - Поддерживаются директивы break/continue для выхода из цикла/перехода на следующую итерацию. |