// Создайте смешанный массив, например [1, 2, 3, ‘a’, ‘b’, ‘c’, ‘4’, ‘5’, ‘6’].
// Посчитайте сумму всех его чисел, включая строковые. Выведите сумму в alert.
// оценочное врмея 20 мин
// реальное время 150мин 
// for (var x = [1, 2, 3, 'a', 'b', 'c', '1', '2', '3'], i = 0, sum=0; i < x.length; i++){
// 	if (isFinite(x[i])) {
// 		sum += +x[i];
// 	}
// }
// console.log(sum);

// Сгенерируйте массив из n случайных чисел с двумя знаками после запятой. 
// Переберите массив и распечатайте в консоли значения его элементов, возведенные в пятую степень, не используя функцию Math.pow().
// оценочное врмея 60мин
// реальное время 150мин 
// var arr = [+Math.random().toFixed(2), +Math.random().toFixed(2), +Math.random().toFixed(2), +Math.random().toFixed(2), +Math.random().toFixed(2)];
// for (i = 0; i < arr.length; i++){
// 	console.log(arr[i]**5);
// }

// Создайте массив со значениями: ‘AngularJS’, ‘jQuery’
// Добавьте в начало массива значение ‘Backbone.js’
// Добавьте в конец массива значения ‘ReactJS’ и ‘Vue.js’
// Добавьте в массив значение ‘CommonJS’ вторым элементом
// Найдите и удалите из массива значение ‘jQuery’, выведите его в alert со словами “Это здесь лишнее”
// оценочное врмея 20мин
// реальное время 10мин 
// var arr = ['AngularJS', 'jQuery',];
// arr.unshift('Backbone.js');
// arr.push('ReactJS', 'Vue.js');
// arr.splice(2, 0, 'CommonJS');  // добавили во вторую позицию
// var del = arr.splice(3, 1);
// alert ('Это сдесь лишнее ' + del);

// Создайте строку с текстом ‘Как однажды Жак звонарь сломал фонарь головой’. 
// Разбейте ее на массив слов, и переставьте слова в правильном порядке с помощью любых методов массива (indexOf, splice ...). 
// Затем объедините элементы массива в строку и выведите в alert исходный и итоговый варианты.
// оценочное врмея 120мин
// реальное время 10мин 
// var str = 'Как однажды Жак звонарь сломал фонарь головой';
// var arr = str.split(' ', 7); 
// arr.splice(4, 0, arr[6]); 
// arr.pop();
// arr.join(' ');
// alert(str + ' -> ' + arr.join(' '));

// Создайте ассоциативный массив person, описывающий персону, с произвольным количеством произвольных полей. 
// С помощью оператора in или typeof проверьте наличие в объекте свойства, прочитанного из prompt, и выведите его на экран. 
// Если свойства нет, то добавляйте его в объект со значением, которое также запрашивается из prompt.
// оценочное врмея 20мин
// реальное время 20мин 
// var person = {
// 	firstName : 'Tony',
// 	lastName : 'Montana',
// 	position : 'developer', 
// 	company : 'G5'
// };
// var dat = prompt('Enter data');
// if (person[dat] !== undefined) {
// 	alert(person[dat]);
// } else if (person[dat] == undefined) {
// 	var dat2 = prompt('Enter value');
// 	person[dat] = dat2;
// }

// Сгенерируйте объект, описывающий модель телефона, заполнив все свойства значениями, 
// прочитанными из prompt (например: brand, model, resolution, color...), не используя вспомогательные переменные. 
// Добавьте этот гаджет персоне, созданной ранее.
// оценочное врмея 40мин
// реальное время 20мин 
// var person = {
// 	firstName : 'Tony',
// 	lastName : 'Montana',
// 	position : 'developer', 
// 	company : 'G5'
// };
// for (phone = {};;) {
// 	phone[dat = prompt('Enter data')];
// 	if (dat === null){
// 		break;
// 	} else 
// 		phone[dat] = (prompt('Enter value'));
// }
// person.phone = phone;

// Создайте объект dates для хранения дат. Первая дата – текущая, new Date.
// Вторая дата – текущая дата минус 365 дней. Из prompt читается дата в формате yyyy-MM-dd. 
// Проверьте, попадает ли введенная дата в диапазон дат объекта dates.
// оценочное врмея 40мин
// реальное время 120мин 
// var dates = {
// 	firstData : new Date(),
// 	secondData : new Date( new Date().setDate(new Date().getDate()-365) )
// }
// var hData = new Date(prompt('yyyy-MM-dd'));
// if ((dates.firstData > hData) &&(hData > dates.secondData)) {
// 	alert(hData);
// } else 
// 	alert('incorrect');

// Создайте пустой массив. В цикле до n на каждой итерации запускайте prompt для ввода любых символов, 
// полученное значение добавляйте в конец созданного массива. 
// После выхода из цикла посчитайте сумму всех чисел массива и выведите в alert полученный результат.
// оценочное врмея 20мин
// реальное время 5мин 
// var arr = [];
// for (var i=0;i < Math.floor((Math.random() * 10) + 1);i++){
// 	value = prompt('Enter anything');
// 	arr.push(value);
// }
// for (var j = 0, sum=0; j < arr.length; j++){
// 	if (isFinite(arr[j])) {
// 		sum += +arr[j];
// 	}
// }
// alert(sum);

//Используя вложенные циклы, сформируйте двумерный массив, содержащий таблицу умножения:
// оценочное врмея 60мин
// реальное время 15мин 
// var array = [], arr = [];
// for (var x=1;x<=10;x++){
// 	for (var y=1, sum;x<=10,y<=10;y++){
// 			sum = x * y; 
// 			arr.push(x + 'x' + y + '=' + sum);
// 			if (y == 10) {
// 				array.push(arr);
// 				arr = [];
// 			}
// 	}
// }

// ------------------------------------------------------------------------------------------
// Создайте структуру данных, полностью описывающую html-разметку картинки.
// оценочное врмея 60мин
// реальное время 5мин 
var imgf = [
	{
		tag : 'src',
		content : 'https://www.google.com.ua/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png'
	},
	{
		tag : 'width',
		content : '300px'
	},
	{
		tag : 'style',
		content : 'border: 1px solid #ccc'
	}
];

//С помощью метода jQuery добавьте картинку на страницу вместе со всеми атрибутами, используя созданную ранее структуру.
// оценочное врмея 60мин
// реальное время 60мин 
var $img = $('<img>').appendTo('body');
$($img).attr(imgf[0].tag, imgf[0].content);
$($img).attr(imgf[1].tag, imgf[1].content);
$($img).attr(imgf[2].tag, imgf[2].content);