123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181 |
- /* 1. Создайте смешанный массив, например [1, 2, 3, ‘a’, ‘b’, ‘c’, ‘4’, ‘5’, ‘6’]. Посчитайте сумму всех его чисел, включая строковые. Выведите сумму в alert.*/
- var arr = [ 1, 2, 3, 'a', 'b', 'c', '4', '5', '6'];
- var sum = 0;
- for (var i = 0; i < arr.length; i++)
- {
- sum += arr[i];
- }
- alert('Сумма массива = ' + sum);
- /* 2. Сгенерируйте массив из N случайных чисел с двумя знаками после запятой.
- Затем переберите массив и распечатайте в консоли значения его элементов,
- возведенные в пятую степень, используя вложенные циклы.*/
- var arr = [];
- var N = prompt ('Введите размер массива N ', 8);
- for (var i = 0; i < N; i++)
- {
- var x = Math.random().toFixed(2);
- console.log ('Сгенерированное число ' + x);
- arr [i] = 1;
- for (var j = 0; j < 5; j++) {
- arr[i] *=x;
- }
- console.log ('Возвели в пятую степень ' + arr[i]);
- }
-
- /* 3. Создайте пустой массив. В цикле до n на каждой итерации запускайте prompt для ввода любых символов, полученное значение добавляйте в конец созданного массива. После выхода из цикла посчитайте сумму всех чисел массива и выведите в alert полученный результат.*/
- var arr = [];
- var sum = '';
- var n = prompt ('Введите размер массива n ', 4);
- for (var i = 0; i < n; i++)
- {
- arr[i] = prompt ('Введите символы элемента массива ', 'aaaabbbb');
- arr.push(arr[i]);
- sum += arr[i];
- }
- alert (sum);
- /* 4. Создайте массив со значениями: ‘AngularJS’, ‘jQuery’
- Добавьте в начало массива значение ‘Backbone.js’
- Добавьте в конец массива значения ‘ReactJS’ и ‘Vue.js’
- Добавьте в массив значение ‘CommonJS’ вторым элементом
- Найдите и удалите из массива значение ‘jQuery’, выведите его в alert со словами “Это здесь лишнее” */
- var arr = ['AngularJS', 'jQuery'];
- arr.unshift ('Backbone.js');
- arr.push ('ReactJS', 'Vue.js');
- arr.splice(2,0,'CommonJS');
- id = arr.indexOf ('jQuery');
- alert ('Это здесь лишнее - ' + arr[id]);
- arr.splice(id, 1);
- alert ('Вот такой массив получается - ' + arr);
- /* 4. Создайте строку с текстом ‘Как однажды Жак звонарь сломал городской фонарь’. Разбейте ее на массив слов, и переставьте слова в правильном порядке с помощью любых методов массива (indexOf, splice ...). Затем объедините элементы массива в строку и выведите в alert исходный и итоговый варианты.*/
- var str = 'Как однажды Жак звонарь сломал городской фонарь';
- var arr = str.split(' ');
- id1 = arr.indexOf ('городской');
- x = arr[id1];
- arr.splice(id1, 1);
- id2 = arr.indexOf ('сломал');
- arr.splice(id2, 0, x);
- var strnew='';
- for (var i = 0; i < arr.length; i++) {
- strnew += arr[i] + ' ';
- }
- alert ('Было: ' + str + '\n' + 'Стало: ' + strnew);
- /* 5. Используя вложенные циклы, сформируйте двумерный массив, содержащий таблицу умножения. */
- var arr = new Array ();
- var i,j;
- for (i = 0; i < 10; i++) {
- arr [i] = new Array();
- for (j = 0; j < 10; j++) {
- arr[i][j] = (i+1)+'x'+(j+1)+'='+((i+1)*(j+1))+' ';
- }
- }
- console.log (arr);
- /* 6. Создайте ассоциативный массив person, описывающий персону,
- с произвольным количеством произвольных полей. С помощью
- оператора in или typeof проверьте наличие в объекте свойства,
- прочитанного из prompt, и выведите его на экран. Если свойства нет,
- то добавляйте его в объект со значением, которое также запрашивается
- из prompt. */
- var person = {
- 'Firstname': 'Slava',
- 'Lastname': 'Ilchenko',
- 'age': '39',
- 'dateofbirth': '1978-11-21',
- 'phone': '+30677068573'
- };
- var property = prompt('Введите свойство','Lastname');
- if (property in person) {
- alert(person[property]);
- } else {
- person[property] = prompt('Такого свойства нет. Укажите значения свойства ' + property + ' у персоны');
- alert('Свойство ' + property + ' записано в ' + person[property] + ' у персоны');
- }
- console.log (person);
- /* 7. Сгенерируйте объект, описывающий модель телефона,
- заполнив все свойства значениями, прочитанными из prompt
- (например: brand, model, resolution, color...), не используя
- вспомогательные переменные. Добавьте этот гаджет персоне,
- созданной ранее.*/
- var modelphone = {
- 'brand': prompt('Brand', 'Apple'),
- 'model': prompt('Model', 'iPhone X'),
- 'resolution': prompt('Resolution', 'Retina'),
- 'color': prompt('Color', 'Silver')
- }
- property = 'modelph';
- person[property] = modelphone;
- console.log (person);
- /* 8. Создайте объект dates для хранения дат. Первая дата – текущая, new Date.
- Вторая дата – текущая дата минус 365 дней.
- Из prompt читается дата в формате yyyy-MM-dd.
- Проверьте, попадает ли введенная дата в диапазон дат объекта dates. */
- var dates = {
- nowdate: new Date(),
- olddate: new Date()
- }
- var arrofdate = [];
- var inputdate = prompt("Введите дату в формате yyyy-MM-dd", "2018-02-02"),
- arrofdate = inputdate.split("-");
- var a = new Date(arrofdate[0], arrofdate[1], arrofdate[2]);
- dates.olddate = new Date(dates.nowdate - (365*24*60*60*1000));
- console.log (dates);
- result = (a < dates.nowdate && a > dates.olddate) ? 'Введенная дата попадает в диапазон' : 'Введенная дата не попадает в диапазон';
- alert (result);
-
- /* 9. Создайте структуру данных, полностью описывающую html-разметку картинки. */
- var img = {
- 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
- }
- /* 10. С помощью jQuery добавьте картинку на страницу вместе со всеми атрибутами, используя созданную ранее структуру.*/
- $(document).ready (function (){
- $('body').append("<img>");
- $('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",
- })
- }
- )
|