Цель: изучить возможности ввода и вывода данных; особенности использования арифметических, логических операторов, операторов сравнения, операторов условного перехода.

Теория

Ввод и вывод данных.

JavaScript был создан в 1995 году как инструмент, предоставляющий веб-дизайнерам возможности программирования. Все современные браузеры имеют поддержку JavaScript. JavaScript встраивается прямо в веб-страницы и исполняется браузером во время их загрузки/

JavaScript добавляется на веб-страницы с помощью тэга <script>. В следующем примере на страницу выводится текст «Я изучаю JavaScript».

<script type="text/javascript">

document.write("Я изучаю JavaScript.");

</script>

JavaScript код также может храниться во внешнем текстовом файле с расширением .js и подключаться к страницам с помощью тэга <script> следующим образом:

<script type="text/javascript" src="ex.js"></script>

JavaScript чувствителен к регистру букв.

В JavaScript существует два вида комментариев: короткие и длинные. Все, что находится после символа // до конца строки, будет являться коротким комментарием. Многострочные комментарии начинаются с /* и заканчиваются */.

В JavaScript предусмотрены три стандартных метода для ввода и вывода данных: alert(), prompt() и confirm().

Методalert() позволяет выводить диалоговое окно (окно оповещения) с заданным сообщением и кнопкой ОК. Используется в случаях, когда необходимо, чтобы пользователь обязательно обратил внимание на определенную информацию.

Метод confirm() позволяет вывести диалоговое окно (окно подтверждения) с сообщением и двумя кнопками – ОК и Отмена (Cancel). Используется в случаях, когда необходимо, чтобы пользователь подтвердил или отклонил что-либо. Если пользователь щелкнул на кнопке ОК, то возвращается значение true; если щелкнул на кнопке Отмена, то возвращается значение false.

Метод prompt() позволяет вывести на экран диалоговое окно (окно запроса) с сообщением, а также с текстовым полем, в которое пользователь может ввести данные. Используются в случаях, когда от пользователя необходимо получить определенную информацию. В этом окне предусмотрены две кнопки: ОК и Отмена (Cancel). В отличие от методов alert() и confirm() данный метод принимает два параметра: сообщение и значение, которое должно появиться в текстовом поле ввода данных по умолчанию.

Пример применения методов для ввода и вывода данных:

<html>

<head>

<script type='text/javascript'>

function fun1() {

alert('Я окно оповещения');

}

function fun2() {

confirm('Я окно подтверждения');

}

function fun3() {

x=prompt('Введите Ваше имя:', 'Имя');

document.write('Здравствуйте, '+ x);

}

</script>

</head>

<body>

<input type='button' value='Окно оповещения' onclick='fun1()' />

<input type='button' value='Окно подтверждения' onclick='fun2()' />

<input type='button' value='Окно запроса' onclick='fun3()' />

</body>

</html>

Типы данных.

Типы данных представлены в таблице 1.

Таблица 1.

Типы данных в Java Script

Тип данных Примеры Описание значений
Строковый или символьный (string) "Привет" "д.т. 123-4567" Последовательность символов, заключенная в кавычки, двойные или одинарные
Числовой (number) 3.14 -567 +2.5 Число, последовательность цифр, перед которой может быть указан знак числа (+ или перед положительными числами не обязательно ставить знак «+»; целая и дробная части чисел разделяются точкой. Число записывается без кавычек
Логический (булевский, boolean) true false true (истина, да) или false (ложь, нет); возможны только два значения
Null   Отсутствие какого бы то ни было значения
Объект (object)   Программный объект, определяемый своими свойствами. В частности, массив также является объектом
Функция (function)   Определение функции – программного кода, выполнение которого может возвращать некоторое значение

Арифметические операторы.

Арифметические операторы используются для выполнения арифметических операций над переменными или значениями.

Таблица 2.

Арифметические операторы

Оператор Название Пример
+ Сложение X + Y
- Вычитание X – Y
* Умножение X * Y
/ Деление X / Y
% Деление по модулю X % Y
++ Увеличение на 1 Х++
-- Уменьшение на 1 Y--

Чтобы уменьшить размер кода, можно использовать сокращенную запись арифметических операций. Например, вместо x= x + y писать x+ = y.

Операторы сравнения

Операторы сравнения представлены в таблице

Таблица 3.

Операторы сравнения

Оператор Название Пример
== Равно X==Y
!= Не равно X!=Y
> Больше, чем X>Y
>= Больше или равно X>=Y
< Меньше, чем X<Y
<= Меньше или равно Х <= Y

Оператор «равно» записывается с помощью двух символов без пробелов между ними.

Логические операторы

Логические данные, обычно получаемые с помощью элементарных выражений, содержащих операторы сравнения, можно объединять в более сложные выражения. Для этого используются логические (булевские) операторы: И (&&), ИЛИ (||), НЕ (!). Выражения с логическими операторами возвращают значение true или false.

Операторы условного перехода

Оператор условного перехода ifпозволяет реализовать структуру условного выражения если ..., то ..., иначе ...

Пример оператора if перехода:

if (sr_ball>=5)

{document.write("Стипендия есть");

}

else

{document.write("Стипендии нету");

}

В фигурных скобках располагается блок кода – несколько выражений. Если в блоке используется одна команда, то фигурные скобки можно не писать.

Оператор Switch(переключатель) удобно использовать, если требуется проверить несколько условий, которые не являются взаимоисключающими.

Пример оператора switch:

switch (sr_ball)

{

case 5: document.write("Стипендия минимальная")

case 6: document.write("Стипендия с коэффициентом 1,2")

case 9: document.write("Стипендия с коэффициентом 1,4")

}

Задания к лабораторной работе № 1

Задание 1. Опробовать работу с модальными окнами alert, prompt, confirm.

Разработать свой диалог с использованием этих команд. Пример диалога:

- вывести приветствие в окне alert “Вас приветствует учебный центр”;

- затем в окне prompt вывести сообщение «Введите имя», а в окне alert вывести сообщение «Добро пожаловать на наши курсы, имя»;

- в окне confirm вывести сообщение "Хотите стать Web-дизайнером?" с альтернативными ответами в окнах alert, если TRUE, то "Учите стили CSS и JavaScript!", если FALSE то "Упускаете время!".

Задание 2. Использование оператора + с числовыми и строковыми переменными.

1) сложить два любых числа (например, 10 и 5). Результат вывести на страницу;

2) сложить две строки (например, “10” и “5”). Результат вывести на страницу;

3) сложить число и строку (например, 22 и “5”). Результат вывести на страницу;

4) сложить строку и число (например, “22” и 5). Результат вывести на страницу;

5) вывод – Результатом сложения строки и числа всегда будет … – вывести в окно.

Задание 3. Найти значение 2-х любых арифметических выражений, записанных на JS с использованием арифметических операций (например, 35y-25x)/5+232 и 8*y/x+5*x/y – 43)*6). Значения x и y задать произвольно, но подобрать такие, чтоб значение одного выражения было намного больше второго. Найти остаток от деления значения одного выражения на значение другого. Вывести результаты на страницу, а также в отдельное окно.

Задание 4. Продемонстрировать использование операторов сравнения (==, !=, >, >=, <, <=) и логических операторов (!, &&, ||).

Введите любое число. Если оно меньше 20 или больше 40 и не равно 15 и делится без остатка на 5, то вывести сообщение «Правильное значение», иначе «Не правильное значение».

Придумайте свой пример с логическими операторами.

Задание 5. Конструкция if..elseif..else.

Ввести 2 числа с клавиатуры. Сравнить их и вывести сообщение на страницу, например “А больше Б”, используя конструкцию if..elseif..else.

Написать свой пример с использованием альтернативного синтаксиса конструкции if..else(условие)?команды1:команды2

Задание 6. Определить, какой сегодня день недели (использовать конструкцию switch case).

Задание 7*. Придумать пример, демонстрирующий обработку исключений с использованием конструкции try … catch.

2.2. Лабораторная работа №2. Функции. Операторы цикла.
Объекты Math, Number

Цель: научиться создавать пользовательские функции на JS, использовать в программах операторы цикла; изучить особенности использования встроенных объектов MathиNumber.

Теория

Функции

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

В JavaScript есть встроенные функции, которые можно использовать в программах, но код которых нельзя редактировать или посмотреть. Пользователь также может создать свои функции для решения конкретных задач – пользовательские.

Описание функции имеет следующий синтаксис:

function имя_функции(параметры){

код

}

Функция messageWrite() в примере ниже будет выполнена только после нажатия на кнопку. В примере используется событие onclick.

<html>

<head>

<script type='text/javascript'>

// Функция выводит текст на страницу

function messageWrite() {

document.write('Текст выводится на страницу с помощью JavaScript!');

}

</script>

</head>

<body>

<input type='button' value='Нажми на меня' onclick='messageWrite()' />

</body>

</html>

Операторы цикла

Цикл – это блок команд, который может повторно выполняться, пока определенное условие не будет выполнено.

JavaScript поддерживает 3 вида циклов: for, while, do..while.

Оператор for

Цикл for исполняет блок команд, пока заданное условие является истинным. Например,

for (i=1;i<=30;i++) {

document.write (i+'<br />');

}

Оператор while

Цикл while выполняет блок кода, пока заданное условие истинно. Напрмер,

var i=1;

while (i<=30) {

document.write (i+'<br />');

i++;

}

Оператор do-while

Цикл do..while часто называют циклом с постусловием, потому что в отличие от предыдущих циклов он вначале исполняет блок команд и только потом проверяет заданное условие. Если условие истинно, блок команд выполняется еще раз, если условие ложно, цикл завершает исполнение.

В отличие от оператора while в операторе do-while код выполняется хотя бы один раз, независимо от условия. В примере код выполнится один раз, так как условие ложно.

var i=20;

do {

document.write('Ястудент (от лат. studens — усердно работающий, занимающийся) БГТУ');

}

while (i<=3);

Объекты

Объекты представляют собой программные единицы, обладающие некоторыми свойствами. Об объекте можно судить по значениям его свойств и описанию того, как он функционирует.

Встроенные объекты имеют фиксированные названия и свойства. Все свойства этих объектов разделяют на два вида: просто свойства и методы. Свойства аналогичны обычным переменным. Они имеют имена и значения. Некоторые свойства объектов доступны только для чтения, их значения нельзя изменять. Другие свойства доступны и для записи – их значения можно изменять с помощью оператора присваивания. Методы аналогичны функциям, они могут иметь параметры или не иметь их.

Таким образом, объект можно понимать как некоторый контейнер, содержащий переменные-свойства и функции-методы.

Для разработчиков веб-сайтов особенно важны объекты String (обработка строк), Array (массивы), Math (математические формулы и константы) и Date (работа с датами).

Объект Math

Встроенный объект Math позволяет производить математические операции. Чтобы обращаться к свойствам и методам этого объекта его не нужно предварительно создавать (в отличие от остальных встроенных объектов JavaScript).

Свойства объекта Math содержат значения часто используемых математических констант. В примере выводятся на страницу некоторые константы.

//Выведем на страницу число Пи

document.write(Math.PI + '<br />');

//Выведем экспоненту

document.write(Math.E + '<br />');

//Выведем натуральный логарифм 10

document.write(Math.LN10 + '<br />');

//Выведем квадратный корень 2

document.write(Math.SQRT2);

С помощью методов объекта можно производить над числами различные математические операции. Ниже перечислены методы Math:

- аbc(число) – возвращает модуль (абсолютное значение) числа;

- асоs(число) – возвращает арккосинус числа;

- asin(число) – возвращает арксинус числа;

- atan(число) – возвращает арктангенс числа;

- atan2(x, у) – возвращает угол в полярных координатах точки;

- ceil(число) – округляет число вверх до ближайшего целого;

- cos(число) – возвращает косинус числа;

- ехр(число) – возвращает число е в степени число;

- floor(число) – округляет число вниз до ближайшего целого;

- log(число) – возвращает натуральный логарифм числа;

- max(число1, число2) – возвращает большее из 2 чисел;

- min(число1, число2) – возвращает меньшее из 2 чисел;

- pow(число1, число2) – возвращает число1 в степени число2;

- random () – возвращает случайное число между 0 и 1;

- round(число) – округляет число до ближайшего целого;

- sin(число) – возвращает синус числа;

- sqrt(число) – возвращает квадратный корень из числа;

- tan(число) – возвращает тангенс числа.

В примере демонстрируется применение методов объекта Math.Все результаты выводятся на страницу.

<html>

<body>

<script type='text/javascript'>

//Округлим число 25.34 до ближайшего целого

document.write(Math.round(25.34) + '<br />');

//Округлим число 25.88 до ближайшего целого

document.write(Math.round(25.88));

//Выберем из чисел 10 68 35 12 44 максимальное

document.write(Math.max(10,68,35,12,44) + '<br />');

//Выберем из чисел 10 68 35 12 44 минимальное

document.write(Math.min(10,68,35,12,44));

//Возведем 5 в -1 степень

document.write(Math.pow(5,-1));

//Сгенерируем случайное число между 0 и 1

document.write(Math.random() + '<br />');

//Сгенерируем случайное число между 0 и 100 и округлим

document.write(Math.round(Math.random()*100));

</script>

</body>

</html>

Объект Number (Число)

В JavaScript числа могут быть двух типов: целые и с плавающей точкой. Числа можно создавать обычным образом с помощью переменных и оператора присваивания, не прибегая к объекту Number. Однако этот объект обладает некоторыми полезными свойствами и методами, которые иногда могут пригодиться.

Пример создания объекта Number:

x = new Number(‘34.21’).

Методы Number:

- toExponential(количество) – представляет число в экспоненциальной форме, параметр количество – целое число, определяющее, сколько цифр после точки следует указывать.

- toFixed(количество) – представляет число в форме с фиксированным количеством цифр после точки, параметр количество – целое число, определяющее, сколько цифр после точки следует указывать.

- toPrecision(точность) – представляет число с заданным общим количеством значащих цифр. Параметр точность – целое число, определяющее, сколько всего цифр, до и после точки, следует указывать.

- toString([основание]) – возвращает строковое представление числа в системе счисления с указанным основанием. Если параметр не указан, имеется в виду десятеричная система счисления. Этот метод имеют все объекты.

Например, следующий код выведет на страницу число 3.422e+1:

x = new Number(34.215);

x=x.toExponential(3);

document.write(x).

Задания к лабораторной работе №2

Задание 1. Все выполненные задания из предыдущей работы оформить в виде функций. Создать кнопки и запускать задание на выполнение щелчком по соответствующей кнопке. Поработать над оформлением результатов вывода (цвет шрифта, кегль, гарнитура).

Задание 2. Вывести таблицу умножения, а и bввести с клавиатуры. Использовать оператор цикла for.

Таблица 4.

b
2*b
     
a a*2 a*b

Применить к ячейкам таблицы свойства форматирования.

Задание 3. Найти площадь круга и длину окружности, радиус меняется от а до b с шагом 0,3. Результаты округлить и вывести в таблице. Использовать оператор цикла do-while.

Таблица 5.

Радиус Площадь круга Длина окружности
a    
a+0,3    
   
b    

Применить к ячейкам таблицы свойства форматирования.

Задание 4. Создать 2 объекта-числа (Number) – дробное и целое. Применить к каждому из них методы: toExponential, toFixed, toPrecision, toString. Результаты проанализировать, представить в таблице в следующем виде:

Таблица 6.

Число Метод Результат Описание метода
127.18 toString(16) 7f.2e147ae147b Строковое представление числа в 16-ричной системе счисления
       

Наши рекомендации