Материал: Начальные основы программирования на языке JavaScript. методические указания к выполнению контрольных работ. Сергеев М.Ю

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

январь – это 0, февраль – 1 и т. д. Если нужно возвратить номер, совпадающий с обычным пониманием месяцев, просто следует добавить 1:

var now = new Date();

var month = now.getMonth()+1; // соответствует

// реальной нумерации // месяца

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

var months = ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'];

var now = new Date ();

var months = months[now.getMonth()];

В первой строке создается массив с двенадцатью названиями месяцев в том порядке, в котором они идут (январь – декабрь). Следует помнить, что для доступа к элементу массива используется индекс и что массивы нумеруются с 0. Итак, для доступа к первому элементу массива с названиями месяцев следует использовать months[0]. Таким образом, с помощью getMonth() можно получить число, используемое как индекс для массива месяцев, посредством чего легко узнать название этого месяца.

Получение дня недели

Метод getDay() возвращает день недели. Как и в методе getMonth(), интерпретатор JavaScript возвращает число на 1 меньше, чем номер дня: 0 – это воскресенье, первый день неде-

19

ли по принятой на Западе традиции, 6 – суббота. Поскольку для обычных людей название дня недели обычно важнее, чем его номер, можно использовать массив для сохранения названий дней и метод getDay() для доступа к отдельному дню в массиве:

var days = [ 'Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота' ];

var now = new Date();

var dayOfWeek = days[now.getDay()];

Получение времени

О6ъект Date также содержит актуальное время, поэтому можно отобразить это время на веб-странице или использовать его, чтобы узнать, в какое время суток посетитель просматривал страницу.

Методы getHours(), getMinutes() и getSeconds() можно использовать для возвращения часов, минут и секунд. То есть, чтобы отобразить время на веб-странице, можно добавить следующий код в HTML туда, где требуется видеть время:

var now = new Date();

var hours = now.getHours();

var minutes = now.getMinutes() ; var seconds = now.getSeconds();

document .write (hours + ":" + minutes + ":" + seconds);

Данный код производит вывод 6:35:56 для обозначения 6 часов, 35 минут и 56 секунд.

Создание не текущей даты

Используя метод Date(), также можно указывать дату и время в будущем и прошлом. Основной формат таков:

20

new Date(год, месяц, день, час, минута, секунда, миллисекунда);

Например, чтобы создать Date для полудня 1 января 2010 г., можно написать следующее:

var ny2010 = new Date(2010, 0, l, 12, 0, 0, 0);

Данный код переводится как «Создать новый объект Date для времени 1.01.2010, 12:00:00:00». Необходимыми параметрами являются только год и месяц. Если не требуется указывать точное время, можно опустить миллисекунды, секунды, минуты и т. д. Например, создание объекта «1 января 2010 года» выглядит так:

var ny2010 = new Date(2010, 0, 1);

Создание даты, являющейся определенным днем не-

дели

Интерпретатор JavaScript считает дату количеством миллисекунд, истекших с 1 января 1970 г. Другими словами, создание даты – это присвоение значения, равного количеству миллисекунд для этой даты:

new Date(количество миллисекунд);

Итак, другой способ создания даты для 1.01.2010 таков:

var ny2010 = new Date(1262332800000);

Конечно, большинство людей – не живые калькуляторы, и дату человек воспринимает не так. Однако миллисекунды очень удобны при создании даты, отстоящей от другой даты на конкретный период времени. Например, при настройке cookie с использованием JavaScript следует указать время, через которое cookie должно быть удалено из браузера посетителя. Чтобы

21

гарантировать, что cookie исчезнет через неделю, необходимо указать одну неделю, начиная с сегодняшнего дня.

Для создания даты, отстоящей от сегодняшнего дня на одну неделю можно сделать следующее:

var now = new Date();

//

текущий мо-

мент

 

 

var nowMS = now.getTime();

//

миллисекун-

ды, соответствующие

 

 

// текущему моменту

 

 

var week = 1000*60*60*24*7;

// вычисление количе-

ства

 

 

// миллисекунд в неделю

var oneWeekFromNow = new Date(nowMS + week);

В первой строке текущие дата и время сохраняются в переменной now. Далее метод getTime() извлекает число миллисекунд, истекших с 1.01.1970 до сегодняшнего дня. Третья строка считает общее количество миллисекунд в неделе (1000 миллисекунд * 60 секунд * 60 минут * 24 часа * 7 дней). В итоге код создает новую переменную, добавляя число миллисекунд в неделе к сегодняшнему дню.

2.3. Задания на контрольную работу № 2

Задание 1. Составить программу для работы с массивом, заполнение которого осуществляется с помощью генератора случайных чисел.

Варианты задания 1

1. Составить программу, формирующую массив A[10] из целочисленных элементов в диапазоне 0..20. Вывести на экран массив и среднее арифметическое его элементов.

22

2.Составить программу, формирующую массив B[12] из целочисленных элементов в диапазоне -5..5. Вывести на экран массив и сумму его положительных элементов.

3.Составить программу, формирующую массив D[11] из целочисленных элементов в диапазоне -10..10. Вывести на экран массив и количество его отрицательных элементов.

4.Составить программу, формирующую массив T[9] из целочисленных элементов в диапазоне 0..10. Вывести на экран массив и количество элементов, больших числа 5.

5.Составить программу, формирующую массив S[10] из целочисленных элементов в диапазоне 0..15. Вывести на экран массив и количество четных элементов.

6.Составить программу, формирующую массив R[12] из целочисленных элементов в диапазоне 0..20. Вывести на экран массив и сумму его нечетных элементов.

7.Составить программу, формирующую массив Y[8] из целочисленных элементов в диапазоне -10..10. Вывести на экран массив и сумму его положительных элементов.

8.Составить программу, формирующую массив P[14] из целочисленных элементов в диапазоне 0..25. Вывести на экран массив и количество элементов, вошедших в диапазон [5..10].

9.Составить программу формирующую массив F[10] из целочисленных элементов в диапазоне 0..10. Вывести на экран массив и сумму элементов, меньших 5.

10.Составить программу формирующую массив Z[10] из целочисленных элементов в диапазоне -5..5. Вывести на экран массив и сумму модулей его элементов.

Задание 2. Составить программу, которая выводит текущие дату и время в определенном формате. Варианты заданий приведены в табл. 6.

23

Источник: https://studfile.net/preview/16564719/