|
@@ -0,0 +1,57 @@
|
|
|
+# Модуль
|
|
|
+
|
|
|
+## extend
|
|
|
+
|
|
|
+Сделать функцию `extend`, которая добавляет один ассоциативный массив во второй:
|
|
|
+
|
|
|
+```javascript
|
|
|
+var person = {name: "Иван", age: 17};
|
|
|
+
|
|
|
+var extendedPerson = extend(person, {surname: "Иванов", fatherName: "Иванович"});
|
|
|
+console.log(extendedPerson); //{name: "Иван", age: 17, surname: "Иванов", fatherName: "Иванович"}
|
|
|
+```
|
|
|
+
|
|
|
+## copy
|
|
|
+Сделайте функцию `copy`, которая будет копировать ключи и значения объекта в новый объект.
|
|
|
+Копирование должно проверять типы данных, и делать **копии** вложенных массивов. Вложенные объекты не копируются (просто присваиваются)
|
|
|
+
|
|
|
+## menuBuilder
|
|
|
+
|
|
|
+Скреативьте функцию `menuBuilder`, которая из структуры
|
|
|
+```javascript
|
|
|
+var menu = [{text: "google", href: "http://google.com"},
|
|
|
+ {text: "ebay", href: "http://ebay.com"},
|
|
|
+ {text: "ya", href: "http://ya.ru"},
|
|
|
+];
|
|
|
+```
|
|
|
+
|
|
|
+создает меню используя `ul`, `li`, `a` в определенном контейнере. `id` контейнера передается в качестве параметра:
|
|
|
+
|
|
|
+```html
|
|
|
+ <body>
|
|
|
+ ...
|
|
|
+ <div id='menuContainer'>
|
|
|
+ </div>
|
|
|
+ ...
|
|
|
+ </body>
|
|
|
+```
|
|
|
+
|
|
|
+```javascript
|
|
|
+menuBuilder("menuContainer", menu); //построить меню в элементе с id "menuContainer".
|
|
|
+```
|
|
|
+Вы можете создавать элементы любым удобным способом (строка, DOM, jQuery)
|
|
|
+
|
|
|
+## gallery
|
|
|
+
|
|
|
+Напилите функцию, которая создает галерею картинок в определенном контейнере. В качестве параметра передавайте `id` контейнера и массив со строками ссылок на картинки:
|
|
|
+
|
|
|
+```javascript
|
|
|
+gallery("galleryContainer",["https://static33.cmtt.ru/paper-media/fd/92/e5/0479e08f8e852d.png", "http://s00.yaplakal.com/pics/pics_original/1/9/4/3736491.jpg"])
|
|
|
+```
|
|
|
+В идеале у вас должна быть стрелки вперед и назад, по клику на которые происходит смена картинки (клик на самой картинке - тоже удобно). Эффекты добавить по вкусу.
|
|
|
+
|
|
|
+## multiplyTable
|
|
|
+
|
|
|
+Функция создает таблицу умножения в переданном `id` контейнере, размером NxN, в которой прямоугольник слева вверх от курсора мыши (включая курсор) выделен другим цветом и ячейки
|
|
|
+пронумерованы по порядку (слева направо, сверху вниз). Желательно иметь заголовки таблицы с числами (1..N) другим стилем. Заголовки не входят в подсвеченный
|
|
|
+прямоугольник.
|