Лабораторная работа №3. Встроенные объекты JavaScript
Цель: изучить встроенные объекты JavaScript Array, String, Date, их свойства и методы, научиться их правильно применять в своих скриптах.
Теория
Объект Array (Массив)
Массив представляет собой упорядоченный набор данных. Его удобно представить себе в виде одностолбцовой таблицы, содержащей некоторое количество строк. В ячейках такой таблицы могут находиться данные любого типа, в том числе и массивы.
Можно создать массивы тремя разными способами.
Первый cпособ:
spec = new Array();
spec[0] = ИСиТ;
spec[1] = "ПОИТ";
spec[2] = "ПОИБМС";
spec[3] = "ДЭВИ";
Второй способ:
var spec = new Array("ИСиТ","ПОИТ","ПОИБМС","ДЭВИ");
Третий способ:
var spec = [("ИСиТ","ПОИТ","ПОИБМС","ДЭВИ")];
Нумерация индексов в массивах начинается не с 1, а с 0. С помощью свойства length можно узнать количество элементов в массиве.
Методы Array:
- concat() объединяет два и более массива в один;
- рор() – удаляет последний элемент массива и возвращает его значение;
- push(значение|объект) – добавляет к массиву указанное значение в качестве последнего элемента и возвращает новую длину массива;
- shift() – удаляет первый элемент массива и возвращает его значение;
- sliсe(индекс1 [, индекс2]) – создает массив из элементов исходного массива с индексами указанного диапазона;
- sort([функция_сортировки]) – сортирует (упорядочивает) элементы массива с помощью функции сравнения.
Объект String (Строка)
Объект String (строковый объект) используется для хранения и обработки текстовой информации.
Примеры создания:
mystring = new String ("Привет!") – первый способ;
mystring = "Привет!" – второй способ.
С помощью свойства length можно узнать длину строки:
document.write(mystring.length)
С помощью метода toUpperCase() можно перевести все символы текста в верхний регистр, а с помощью toLowerCase() – в нижний.
Метод concat() позволяет объединить две и более строки и вывести результат на страницу:
str='Кафедра';
document.write(str.concat('ИСиТ'));
Метод replace() позволяет заменить одно произвольное слово в строке на другое:
document.write(str.replace('ИСиТ','ПОИТ')).
Объект Date (Дата)
Объект Date позволяет производить различные операции с датой и временем. Некоторые методы объекта представлены в таблице.
Таблица 7.
Метод | Описание |
getDate() | Возвращает день месяца (может принимать значения от 1-31) заданной даты. |
getDay() | Возвращает день недели (может принимать значения от 0-6, причем 0-Воскресенье, а 6-Суббота) заданной даты. |
getFullYear() | Возвращает год (4 числа, например 2017) заданной даты. |
getHours() | Возвращает час (может принимать значения от 0-23) заданной даты. |
getMiliseconds() | Возвращает миллисекунду (может принимать значения от 0-999) заданной даты. |
getMinutes() | Возвращает минуту (может принимать значения от 0-59) заданной даты. |
getMonth() | Возвращает месяц (может принимать значения от 0-11) заданной даты. |
getSeconds() | Возвращает секунду (может принимать значения от 0-59) заданной даты. |
toDateString() | Преобразует часть объект, содержащую дату, в строку. |
toString() | Преобразует объект в строку. |
toTimeString() | Преобразует часть объекта, содержащую время, в строку. |
После того, как объект создан, можно с помощью доступных методов производить над ним различные операции.
Пример.
//Создадим объект Date
x=new Date();
//Извлечем день месяца и выведем результат на страницу
document.write(x.getDate());
//Извлечем год из объекта x и выведем результат на страницу
document.write(x.getFullYear());
Задания к лабораторной работе №3
Задание 1. Сформировать массив (объект Array), элементами которого являются значения выражений. Для вычисления выражений использовать объект Math. Найти максимальный и минимальный элементы массива и их номера.
1.
2.
3.
4.
Задание 2. Задан массив с элементами, представляющими методы объектов Array и Math (pow, pop, push, shift, round, floor, sline, sort). Получить из него 2 массива, в один записать методы объекта Array, в другой – методы объекта Math.
Добавить в начало одного массива и в конец другого еще по одному методу соответствующих объектов.
Вывести исходный массив, полученные массивы и их длину (количество элементов).
Задание 3. Создать объект String – строку текста (свои Фамилия Имя Отчество), в которой присутствуют строчные и прописные буквы. Узнать ее длину.
Перевести все символы строки в верхний регистр, а затем в нижний. Содинить полученные строки. Заменить свои Фамилия Имя Отчество на ФИО.
Вывести исходную и полученные строки на страницу.
Задание 4. Использовать объект Date. Вывести на страницу таблицу с составляющими текущей даты и времени в виде:
Таблица 8.
Год | |
Месяц | |
День | |
Час | |
Минуты | |
Секунды |
Применить к ячейкам таблицы свойства форматирования.
2.4. Лабораторная работа № 4. Пользовательские объекты JS.
Специальные операторы
Цель: изучить способы создания пользовательских объектов, познакомиться с правилами применения специальных операторов: delete, in, instanceof, typeof.
Теория
Пользовательские объекты в JavaScript можно создать несколькими способами.
Один из способов основан на функции, в теле которой описываются все свойства и методы создаваемого объекта. Ее называют функцией-конструктором или просто конструктором объекта. Имя функции-конструктора объекта является одновременно и именем создаваемого объекта. Свойства и методы создаваемого объекта задаются в теле функции-конструктора с помощью операторов присваивания, имена переменных-свойств записываются с ключевым словом this (этот).
Пример создания и использования объекта, созданного с помощью конструктора.
//Конструктор для создания объекта Gruppa со свойствами n, spec, kolich и методом add_stud
function Gruppa(n,spec,kolich) {
//Свойства(номер, специальность, количество)
this.n=n;
this.spec=spec;
this.kolich=kolich;
//Метод (добавить в группу k студентов)
this.add_stud=function add_stud(k) {
this.kolich+=k;
document.write('Вгруппу ' + this.n + ' добавили'+ k + ' студентов.<br\>');
}
}
//Теперь можно создавать экземпляры объекта gr1=newGruppa(2, 'ИСиТ', 28);
//Вызов метода созданного объекта (добавить 2 студента)
gr1.add_stud(2);
//C помощью prototype добавим объекту свойство kurs,
//экземпляры объекта будут иметь это свойство
Gruppa.prototype.kurs=this.kurs
gr1.kurs=2