- •Міністерство освіти і науки, молоді та спорту України
- •1. Мета роботи
- •1. Мета роботи
- •2. Склад робочого місця
- •3. Підготовка до лабораторної роботи
- •4. Порядок виконання роботи
- •5. Питання для самоконтролю
- •1. Мета роботи
- •2. Створення анімації з автоматичною вставкою проміжних кадрів
- •5. Питання для самоконтролю
- •1. Мета роботи
- •2. Склад робочого місця
- •3. Підготовка до лабораторної роботи
- •4. Порядок виконання роботи
- •5. Питання для самоконтролю
- •1. Мета роботи
- •2. Склад робочого місця
- •3. Підготовка до лабораторної роботи
- •4. Порядок виконання роботи
- •5. Питання для самоконтролю
- •5. Питання для самоконтролю
- •1. Мета роботи
- •2. Склад робочого місця.
- •3. Підготовка до лабораторної роботи
- •4. Порядок виконання роботи
- •5. Питання для самоконтролю
- •1. Мета роботи
- •Варіант 8-03
- •Варіант 8-04
- •Варіант 8-05
- •Варіант 8-06
- •Варіант 8-07
- •Варіант 8-08
- •Варіант 8-13
- •Варіант 8-14
- •Варіант 8-15
- •5. Питання для самоконтролю
- •1. Мета роботи
- •Варіант 9-12
- •Варіант 9-13
- •Варіант 9-14
- •Варіант 9-15
- •5. Питання для самоконтролю
- •1. Мета роботи
- •Варіант 10-02
- •Варіант 10-03
- •Варіант 10-04
- •Варіант 10-05
- •Варіант 10-06
- •Варіант 10-07
- •Варіант 10-08
- •Варіант 10-09
- •Варіант 10-10
- •Варіант 10-11
- •Варіант 10-12
- •Варіант 10-13
- •Варіант 10-14
- •Варіант 10-15
- •5. Питання для самоконтролю
- •1. Мета роботи
- •1. Мета роботи
- •Варіант 12-02
- •Варіант 12-03
- •Варіант 12-04
- •Варіант 12-05
- •Варіант 12-06
- •Варіант 12-07
- •Варіант 12-08
- •Варіант 12-09
- •Варіант 12-10
- •Варіант 12-11
- •Варіант 12-12
- •Варіант 12-13
- •Варіант 12-14
- •Варіант 12-15
- •5. Питання для самоконтролю
- •1. Мета роботи
- •Варіант 13-09
- •Варіант 13-10
- •Варіант 13-11
- •Варіант 13-12
- •Варіант 13-13
- •Варіант 13-14
- •Варіант 13-15
- •5. Питання для самоконтролю
- •1 Основна література
- •2 Додаткова література
В функции-конструкторе в качестве параметров задается список строк (количество строк в списке может быть произвольным).
Свойствами объекта DictionaryArray является length (количество строк в массиве) и свойство content, содержащего сам массив строк.
В конструкторе количество переданных в функцию параметров определяется с помощью свойства arguments.length объекта Function, а сами параметры функции хранятся в массиве arguments (оба свойства доступны внутри функции). В блоке try выполняется в цикле проверка элементов массива arguments на соответствие следующему шаблону: значение элемента должно быть последовательностью из одной или более строчных букв кириллицы.
Если какой-либо элемент не соответствует шаблону, «бросается» ошибка WrongWordError, в блоке catch выводится сообщение об ошибке, свойству length присваивается значение 0, свойству content – пустой массив и выполняется возврат из функции. В противном случае значение размера массива присваивается свойству length, а сам массив – свойству content.
Для объекта DictionaryArray определены методы arrayToString и deleteWord, реализуемые с помощью функций convertToString и deleteWordInArray.
Функция convertToString (без параметров) преобразует массив в строку и возвращает результат преобразования. В цикле элементы массива с предшествующим символом "," последовательно добавляются к строке, первоначально состоящей из первого элемента массива.
Функция deleteWordInArray удаляет слово, заданное в качестве параметра, из массива и заново сортирует элементы массива. Сначала в блоке try проверяется правильность задания слова. Если параметр – не слово, «бросается» ошибка WrongWordError, а затем в блоке catch выводится сообщение об ошибке и функция возвращает значение null. Затем в другом блоке try проверяется размер массива (значение свойства length). Если оно равно 0, «бросается» ошибка EmptyArrayError, а затем в блоке catch выводится сообщение об ошибке и функция возвращает значение null. В третьем блоке try в цикле проверяется наличие слова в массиве. Если слово не найдено, «бросается» ошибка NoWordError, а затем в блоке catch выводится сообщение об ошибке и функция возвращает значение null. В противном случае элемент (по найденному в третьем блоке try индексу) удаляется из массива с помощью функции splice() объекта Array, а затем массив сортируется по возрастанию с помощью функции sort() объекта Array. Значение свойства length при этом уменьшается на 1. Функция возвращает значение удаленного слова.
Далее в сценарии выполняются следующие действия:
создание экземпляра объекта DictionaryArray с произвольным количеством параметров, один из которых неверный;
создание экземпляра объекта DictionaryArray с произвольным количеством правильных параметров;
вызов метода arrayToString() для созданного массива, и вывод возвращаемого значения с помощью функции alert();
вызов метода deleteWord() для слова, которого нет в массиве, и вывод возвращаемого значения с помощью функции alert();
вызов метода deleteWord() для слова, которое есть в массиве, и вывод возвращаемого значения с помощью функции alert();
вызов метода arrayToString() для нового массива, и вывод возвращаемого значения с помощью функции alert().
Варіант 10-13
Создайте сценарий в Web-странице, в котором создается пользовательский объект BinaryArray (массив двоичных чисел). Для объекта определены следующие ошибки:
WrongBinaryError с именем "WrongBinaryError" и сообщением "Неверное значение элемента" (в случае, если элемент – не двоичное число);
WrongBinaryListError с именем "WrongBinaryListError" и сообщением "Неверный список элементов" (в случае, если задан неверный список элементов массива).
В функции-конструкторе в качестве параметров задается список чисел (количество чисел в списке может быть произвольным).
Свойствами объекта BinaryArray является length (количество чисел в массиве) и свойство content, содержащего сам массив двоичных чисел.
В конструкторе количество переданных в функцию параметров определяется с помощью свойства arguments.length объекта Function, а сами параметры функции хранятся в массиве arguments (оба свойства доступны внутри функции). В блоке try выполняется в цикле проверка элементов массива arguments на соответствие следующему шаблону: значение элемента должно быть последовательностью нулей и единиц.
Если какой-либо элемент не соответствует шаблону, «бросается» ошибка WrongBinaryError, в блоке catch выводится сообщение об ошибке, свойству length присваивается значение 0, свойству content – пустой массив и выполняется возврат из функции. В противном случае значение размера массива присваивается свойству length, а сам массив – свойству content.
Для объекта BinaryArray определены методы searchBinary и addBinary, реализуемые с помощью функций searchBinaryItem и addBinaryItem.
Функция searchBinaryItem проверяет, если ли в массиве двоичное число, заданное в качестве параметра функции. Сначала в блоке try проверяется соответствии параметра шаблону (двоичное число). Если параметр не соответствует шаблону, «бросается» ошибка WrongBinaryError, в блоке catch выводится сообщение об ошибке и возвращается значение -1, в противном случае в цикле просматривается элемент свойства content и, если число, заданное в качестве параметра, найдено в свойстве, возвращается значение индекса этого числа, иначе возвращается -1.
Функция addBinaryItem добавляет число, заданное в качестве параметра, в массив. Сначала в блоке try проверяется соответствие параметра шаблону (двоичное число). Если параметр не соответствует шаблону, «бросается» ошибка WrongBinaryError, в блоке catch выводится сообщение об ошибке и возвращается значение null, иначе число добавляется в конец массива (свойства content), свойство length увеличивается на 1 и функция возвращает значение добавленной цифры.
Далее в сценарии выполняются следующие действия:
вызов конструктора метода BinaryArray с произвольным числом параметров, один из которых неправильный (не цифра);
вызов конструктора метода BinaryArray с произвольным числом правильных параметров;
вызов метода searchBinary() для числа, отсутствующего в массиве, и вывод возвращаемого значения с помощью функции alert();
вызов метода searchBinary() для числа, которое есть в массиве, и вывод возвращаемого значения с помощью функции alert();
вызов метода addBinary() и вывод возвращаемого значения с помощью функции alert().
Варіант 10-14
Создайте сценарий в Web-странице, в котором создается пользовательский объект BinaryArray (массив двоичных чисел). Для объекта определены следующие ошибки:
WrongBinaryError с именем "WrongBinaryError" и сообщением "Неверное значение элемента" (в случае, если элемент – не двоичное число);
EmptyArrayError с именем "EmptyArrayError" и сообщением "Пустой массив" (в случае, если в массиве нет ни одного элемента);
NoBinaryError с именем "NoBinaryError" и сообщением "Нет элемента" (в случае, если задан неверный список элементов массива).
В функции-конструкторе в качестве параметров задается список двоичных чисел (количество чисел в списке может быть произвольным).
Свойствами объекта BinaryArray является length (количество чисел в массиве) и свойство content, содержащего сам массив двоичных чисел.
В конструкторе количество переданных в функцию параметров определяется с помощью свойства arguments.length объекта Function, а сами параметры функции хранятся в массиве arguments (оба свойства доступны внутри функции). В блоке try выполняется в цикле проверка элементов массива arguments на соответствие следующему шаблону: значение элемента должно быть последовательностью нулей и единиц.
Если какой-либо элемент не соответствует шаблону, «бросается» ошибка WrongBinaryError, в блоке catch выводится сообщение об ошибке, свойству length присваивается значение 0, свойству content – пустой массив и выполняется возврат из функции. В противном случае значение размера массива присваивается свойству length, а сам массив – свойству content.
Для объекта BinaryArray определены методы replaceBinary и deleteBinary, реализуемые с помощью функций replaceBinaryItem и deleteBinaryItem.
Функция replaceBinaryItem заменяет число заданное в первом параметре, на число, заданное во втором параметре. Сначала в блоке try проверяется соответствии параметра шаблону (двоичное число). Если хотя бы один из параметров не соответствует шаблону, «бросается» ошибка WrongBinaryError, в блоке catch выводится сообщение об ошибке и возвращается значение null, иначе в другом блоке try проверяется в цикле наличие в массиве (свойстве content) значения, заданного в первом параметре. Если значение не найдено, «бросается» ошибка NoBinaryError, в блоке catch выводится сообщение об ошибке и возвращается значение null. Если ошибок не обнаружено, для свойства content вызывается функция splice() объекта Array, заменяющая элемент с найденным во втором блоку try индексом в массиве.
Функция deleteBinaryItem удаляет число, заданное в качестве параметра, из массива. Сначала в блоке try проверяется соответствие параметра шаблону (двоичное число). Если параметр не соответствует шаблону, «бросается» ошибка WrongBinaryError. Затем в другом блоке try проверяется размер массива (значение свойства length). Если оно равно 0, «бросается» ошибка EmptyArrayError, а затем в блоке catch выводится сообщение об ошибке и функция возвращает значение null. В следующем блоке try свойство content в цикле проверяется на наличие числа, заданного в качестве параметра. Если число не найдено в массиве, «бросается» ошибка NoBinaryError, в блоке catch выводится сообщение об ошибке и функция возвращает значение null. Если число найдено, для свойства content вызывается функция splice() объекта Array, удаляющая элемент с найденным в третьем блоке try индексом из массива. Свойство length уменьшается на 1, и функция возвращает значение удаленного числа.
Далее в сценарии выполняются следующие действия:
вызов конструктора метода BinaryArray с произвольным числом параметров, один из которых неправильный (не цифра);
вызов конструктора метода BinaryArray с произвольным числом правильных параметров;
вызов метода replaceBinary() для числа, отсутствующего в массиве, и вывод возвращаемого значения с помощью функции alert();
вызов метода replaceBinary() для числа, которое есть в массиве, и вывод возвращаемого значения с помощью функции alert();
вызов метода deleteBinary() для числа, отсутствующего в массиве, и вывод возвращаемого значения с помощью функции alert();
вызов метода deleteBinary() для числа, которое есть в массиве, и вывод возвращаемого значения с помощью функции alert().
Варіант 10-15
Создайте сценарий в Web-странице, в котором создается пользовательский объект QueueArray (массив чисел, имитирующий очередь). Для объекта определена ошибка WrongNumberError с именем "WrongNumberError" и сообщением "Неверный элемент" (в случае, если элемент – не целое число).
Функция-конструктор не имеет параметров.
Свойствами объекта QueueArray является length (количество чисел в массиве) и свойство content, содержащего сам массив чисел. В конструкторе создается пустой массив (пустая очередь).
Для объекта QueueArray определены методы searchNumber и addNumber, реализуемые с помощью функций searchNumberInArray и addNumberInArray.
Функция searchNumberInArray для числа, заданного в качестве параметра, проверяет его наличие в очереди. Сначала в блоке try проверяется соответствие параметра шаблону (целое число). Если параметр не соответствует шаблону, «бросается» ошибка WrongNumberError, в блоке catch выводится сообщение об ошибке и возвращается значение false. Если параметр соответствует шаблону, массив (значение свойства content) просматривается в цикле по элементам, и, если элемент найден, функция возвращает значение true, иначе возвращает значение false.
Функция addNumberInArray добавляет число, заданное в качестве параметра, в массив. Сначала в блоке try проверяется правильность задания числа. Если параметр – не число, «бросается» ошибка WrongNumberError, а затем в блоке catch выводится сообщение об ошибке и функция возвращает значение null. В противном случае элемент вставляется в конец массива с помощью функции push() объекта Array. Значение свойства length при этом увеличивается на 1. Функция возвращает значение добавленного числа.
Далее в сценарии выполняются следующие действия:
создание экземпляра объекта QueueArray;
вызов метода searchWord() с неверным значением параметра;
вызов метода addNumber() для неверного значения параметра;
вызов нескольких методов addNumber() для заполнения очереди, и вывод возвращаемых значений с помощью функции alert().
5. Питання для самоконтролю
Як створюється призначений для користувача об'єкт в JavaScript і як створюється новий екземпляр призначеного для користувача об'єкту?
Як діють оператори typeof і instanceof, і які значення вони повертають?
Як діють оператори delete, in і void, і які значення вони повертають?
Для вирішення яких завдань використовуються регулярні вирази?
Каким способами може бути створений об'єкт Regular Expression? Які опції можуть бути задані в шаблоні і яке їх призначення?
Які властивості визначені для об'єкту Regular Expression, і яке їх призначення?
Як працюють функції test() і compile() об'єкту Regular Expression?
Як працює функція exec() об'єкту Regular Expression?
Для яких цілей використовується вбудований об'єкт RegExp, і які властивості визначені для цього об'єкту? Дайте коротку характеристику кожної властивості.