|
@@ -1,307 +0,0 @@
|
|
|
-$(document).ready(function() {
|
|
|
-
|
|
|
- $(".button").css({ // Стилизация кнопки для запуска задач
|
|
|
- "display": "inline-block",
|
|
|
- "background": "grey",
|
|
|
- "cursor": "pointer",
|
|
|
- "padding": "10px",
|
|
|
- "margin": "20px 0 0 20px",
|
|
|
- "border-radius": "10px",
|
|
|
- "color": "white"
|
|
|
- });
|
|
|
-
|
|
|
- $(".task").css({
|
|
|
- "width": "50%",
|
|
|
- "border-bottom": "1px solid black",
|
|
|
- "box-sizing": "border-box",
|
|
|
- "padding": "10px"
|
|
|
- });
|
|
|
-
|
|
|
- $("div.task:nth-child(11)").append("<img>"); // Задание 11, добавить картинку
|
|
|
- $("div.task:nth-child(11) img").attr({
|
|
|
- "src": "https://www.google.com.ua/logos/doodles/2017/bella-akhmadulinas-80th-birthday-5134676388741120.3-law.gif",
|
|
|
- "alt": "",
|
|
|
- "style": "border: 1px solid #ccc",
|
|
|
- "width": "200",
|
|
|
- })
|
|
|
-
|
|
|
-});
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-// Задачки
|
|
|
-
|
|
|
-function exercises(par) {
|
|
|
-
|
|
|
- var arr = [task_1, task_2, task_3, task_4, task_5, task_6, task_7, task_8, task_9];
|
|
|
-
|
|
|
- arr[par-1]();
|
|
|
-
|
|
|
-};
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-// 1. Создайте смешанный массив, например [1, 2, 3, ‘a’, ‘b’, ‘c’, ‘4’, ‘5’, ‘6’].
|
|
|
-// Посчитайте сумму всех его чисел, включая строковые. Выведите сумму в alert.
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-function task_1() {
|
|
|
-
|
|
|
- var arr = [1, 2, 3, 'a', 'b', 'c', '4', '5', '6'],
|
|
|
- sum = 0;
|
|
|
-
|
|
|
- for(var i = 0; i < arr.length; i++) {
|
|
|
-
|
|
|
- if (!isNaN(+arr[i])) {
|
|
|
- sum = sum + +arr[i];
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- alert(sum);
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-// 2. Сгенерируйте массив из N случайных чисел с двумя знаками после запятой.
|
|
|
-// Затем переберите массив и распечатайте в консоли значения его элементов,
|
|
|
-// возведенные в пятую степень, используя вложенные циклы.
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-function task_2() {
|
|
|
-
|
|
|
- var n = +prompt("Введите длинну массива", ""),
|
|
|
- arr = [];
|
|
|
-
|
|
|
- for(var i = 0; i < n; i++) {
|
|
|
-
|
|
|
- var a = 1; // переменная в которую будет записываться произведение элементов массива до 5-ой степени.
|
|
|
-
|
|
|
- arr[i] = (Math.random()*10).toFixed(2);
|
|
|
-
|
|
|
- for(var j = 0; j < 5; j++) {
|
|
|
-
|
|
|
- a = a * arr[i];
|
|
|
- }
|
|
|
-
|
|
|
- console.log(a);
|
|
|
- }
|
|
|
-
|
|
|
- console.log(arr);
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-// 3. Создайте пустой массив. В цикле до n на каждой итерации запускайте prompt для ввода любых символов,
|
|
|
- // полученное значение добавляйте в конец созданного массива. После выхода из цикла
|
|
|
- // посчитайте сумму всех чисел массива и выведите в alert полученный результат.
|
|
|
-
|
|
|
-
|
|
|
-function task_3() {
|
|
|
-
|
|
|
- var arr = [],
|
|
|
- sum = 0,
|
|
|
- n = prompt("Введите n", "");
|
|
|
-
|
|
|
- for(var i = 0; i < n; i++) {
|
|
|
-
|
|
|
- arr.push(prompt("Введите элемент массива", ''));
|
|
|
- }
|
|
|
-
|
|
|
- for(var j = 0; j < arr.length; j++) {
|
|
|
-
|
|
|
- if (!isNaN(+arr[j])) {
|
|
|
- sum = sum + +arr[j];
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- alert(sum);
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-// 4. Создайте массив со значениями: ‘AngularJS’, ‘jQuery’
|
|
|
-// Добавьте в начало массива значение ‘Backbone.js’
|
|
|
-// Добавьте в конец массива значения ‘ReactJS’ и ‘Vue.js’
|
|
|
-// Добавьте в массив значение ‘CommonJS’ вторым элементом
|
|
|
-// Найдите и удалите из массива значение ‘jQuery’, выведите его в alert со словами “Это здесь лишнее”
|
|
|
-
|
|
|
-// ET = 8 min;
|
|
|
-// AT = 5 min;
|
|
|
-
|
|
|
-function task_4() {
|
|
|
-
|
|
|
- var arr = ['AngularJS', 'jquery'];
|
|
|
-
|
|
|
- arr.unshift('Backbobe.js');
|
|
|
- arr.push('ReactJS', 'Vue.js');
|
|
|
- arr.splice(1,0,'CommonJS');
|
|
|
- alert( arr.splice(arr.indexOf('jquery'), 1) + " - это здесь лишнее" );
|
|
|
- alert(arr);
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-// 5. Создайте строку с текстом ‘Как однажды Жак звонарь сломал городской фонарь’.
|
|
|
-// Разбейте ее на массив слов, и переставьте слова в правильном порядке с помощью любых
|
|
|
-// методов массива (indexOf, splice ...). Затем объедините элементы массива в строку
|
|
|
-// и выведите в alert исходный и итоговый варианты.
|
|
|
-
|
|
|
-
|
|
|
-// ET = 5 min;
|
|
|
-// AT = 9 min;
|
|
|
-
|
|
|
-function task_5() {
|
|
|
-
|
|
|
- var str_1 = "Как однажды Жак звонарь сломал городской фонарь",
|
|
|
- str_2,
|
|
|
- arr = [];
|
|
|
-
|
|
|
- arr = str_1.split(" ");
|
|
|
-
|
|
|
- arr.splice(arr.indexOf("городской"), 0, arr.splice(arr.indexOf("сломал"), 1));
|
|
|
-
|
|
|
- str_2 = arr.join(" ");
|
|
|
-
|
|
|
- alert(str_1+"\n"+str_2);
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-// 6. Используя вложенные циклы, сформируйте двумерный массив, содержащий таблицу умножения
|
|
|
-
|
|
|
-
|
|
|
-function task_6() {
|
|
|
-
|
|
|
- var arr = [];
|
|
|
-
|
|
|
- for(var i = 1; i <=10; i++) {
|
|
|
-
|
|
|
- arr[i] = [];
|
|
|
-
|
|
|
- for(var j = 1; j <= 10; j++) {
|
|
|
-
|
|
|
- arr[i][j] = i + "x" + j + "=" + (i*j);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- alert(arr);
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-// 7. Создайте ассоциативный массив person, описывающий персону, с произвольным
|
|
|
-// количеством произвольных полей. С помощью оператора in или typeof проверьте наличие
|
|
|
-// в объекте свойства, прочитанного из prompt, и выведите его на экран.
|
|
|
-// Если свойства нет, то добавляйте его в объект со значением, которое также запрашивается из prompt.
|
|
|
-
|
|
|
-
|
|
|
-function task_7() {
|
|
|
-
|
|
|
- var person = {
|
|
|
- name: "Oleg",
|
|
|
- age: 24,
|
|
|
- },
|
|
|
- a;
|
|
|
-
|
|
|
- a = prompt("Введите свойство объекта", "");
|
|
|
-
|
|
|
- if (a in person) {
|
|
|
-
|
|
|
- alert(a + ": " + person[a]);
|
|
|
-
|
|
|
- } else {
|
|
|
-
|
|
|
- person[a] = prompt("Такого поля нет. Давайте добавим поле " + a + ". Введите значение этого свойства:", "");
|
|
|
- alert(a + ": " + person[a])
|
|
|
- }
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-// 8. Сгенерируйте объект, описывающий модель телефона, заполнив все свойства значениями,
|
|
|
-// прочитанными из prompt (например: brand, model, resolution, color...), не используя
|
|
|
-// вспомогательные переменные. Добавьте этот гаджет персоне, созданной ранее.
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-function task_8() {
|
|
|
-
|
|
|
- var person = {
|
|
|
- firstname: "Oleg",
|
|
|
- age: 24,
|
|
|
- },
|
|
|
- phone = {};
|
|
|
-
|
|
|
- alert("Давайте добавим свойства телефону");
|
|
|
-
|
|
|
- while(true) {
|
|
|
-
|
|
|
- var a = prompt("Введите характеристику телефона (например: brand, model, resolution, color...):");
|
|
|
-
|
|
|
- if (a == null || a == "") { // характеристики вводятся пока не будет нажата Отмена или введена пустая строка
|
|
|
-
|
|
|
- break;
|
|
|
-
|
|
|
- } else
|
|
|
-
|
|
|
- if (a in phone) {
|
|
|
-
|
|
|
- alert(a + ": " + phone[a]);
|
|
|
-
|
|
|
- } else {
|
|
|
-
|
|
|
- phone[a] = prompt("Такой характеристики нету. Давайте добавим " + a + ". Введите значение этого свойства:", "");
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
- person.personPhone = phone;
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-// 9. Создайте объект dates для хранения дат. Первая дата – текущая, new Date.
|
|
|
-// Вторая дата – текущая дата минус 365 дней. Из prompt читается дата в формате yyyy-MM-dd.
|
|
|
-// Проверьте, попадает ли введенная дата в диапазон дат объекта dates.
|
|
|
-
|
|
|
-
|
|
|
-function task_9() {
|
|
|
-
|
|
|
- var dates = {
|
|
|
- currentDate: new Date(),
|
|
|
- },
|
|
|
- userDate = prompt("Введите дату в формате yyyy-MM-dd", ""),
|
|
|
- arr = [];
|
|
|
-
|
|
|
- arr = userDate.split("-");
|
|
|
-
|
|
|
- var a = new Date(arr[0], arr[1] - 1, arr[2]);
|
|
|
-
|
|
|
- dates.secondDate = new Date(dates.currentDate - 365*24*60*60*1000);
|
|
|
-
|
|
|
- if (a > dates.secondDate && a < dates.currentDate) {
|
|
|
- alert("Введенная дата попадает в диапазон");
|
|
|
- } else {
|
|
|
- alert("Введенная дата не попадает в диапазон");
|
|
|
- }
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-// 10. Создайте структуру данных, полностью описывающую html-разметку картинки
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-// 11. С помощью jQuery добавьте картинку на страницу вместе со всеми атрибутами, используя созданную ранее структуру.
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|