Занимательные задачи JavaScript
Відкрити в Telegram
Ваша цель: решить задачу максимально изящно и просто. Предлагайте свои варианты решения в комментариях. Задачи выходят по будням в 14.00.
Показати більше748
Підписники
Немає даних24 години
-17 днів
-530 днів
Архів дописів
Задача 45
Перемещение элемента по клику
Дан элемент страницы. Нажмем на этот элемент, тем самым активировав его. Повторное нажатие на страницу должно приводить к перемещению элемента (его центра) в эту точку клика.
Задача 44
Повтор чисел в массиве
Дан массив с целыми положительными числами, например, вот такой:
[2, 3, 1, 4]
Сделайте так, чтобы каждое число в массиве повторилось столько раз, какое значение имеет это число: двойка - два раза, тройка - три раза и так далее. То есть у нас должен получится следующий массив:
[2, 2, 3, 3, 3, 1, 4, 4, 4, 4]
Задача 43
Наличие полосы прокрутки в элементе
Дан элемент. Узнайте, есть ли в нем полоса прокрутки в данный момент или нет.
Задача 42
Ячейки сетки на канвасе
С помощью canvas нарисуйте сетку и сделайте так, чтобы по клику на любую ячейку сетки эта ячейка становилась закрашенной. А по клику на закрашенную ячейку она должна становится пустой.
Задача 41
Максимальная ячейка таблицы
Дана таблица с числами. По нажатию на кнопку найдите ячейку, в которой хранится максимальное число, и сделайте ее фон красным.
Задача 40
Случайный чекбокс
На странице есть чекбоксы, отмеченные и нет. Сделайте так, чтобы по нажатию на кнопку случайный чекбокс сменил свое состояние (с отмеченного на неотмеченное и наоборот).
Задача 39
Половина экрана
Дано окно браузера. Условно его можно разделить на правую и левую половины. Пусть теперь на странице даны элементы. Сделайте так, чтобы элементы, целиком находящиеся в левой половине окна покрасились в зеленый цвет, целиком находящиеся в правой половине окна - в синий, а находящиеся и там, и там - в красный.
Задача 38
Функция с мультивызовом
Напишите функцию, которая будет возвращать сумму любого количества чисел. Работать функция должна вот так:
let res = getSum(2)(5)(6)(7)(2)(3)(4);
console.log(res);
Задача 37
Числа в инпутах по кругу
Даны инпуты. Поставьте первому инпуту в value число 1, через секунду второму число 2, еще через секунду третьему число 3 и так далее пока инпуты не закончатся. Когда инпуты закончатся продолжите нумерацию с первого инпута.
По вашим просьбам:
Бесплатный тренинг по поиску ошибок JavaScript.
Начало 6-го февраля.
В тренинге вам будут предложены задачи, в которых некоторый программист допустил ошибки. Вам нужно будет найти ошибки, исправить их, а также объяснить суть ошибки.
Для записи вступите в следующий канал:
https://t.me/+dih2v9lTJ5hkMTRi
P.S.
К тренингу специально придуманы новые задачи!
Более сложного уровня, по сравнению с теми,
которые уже есть в учебнике:)
Задача 36
Координаты четырех углов
Дан элемент. По клику на него выведите координаты его четырех углов относительно окна браузера.
Задача 35
Порядковый номер клика по экрану
Сделайте так, чтобы при клике на любое место окна браузера в месте клика появлялся порядковый номер этого клика.
Задача 34
Перестановка пар символов
Дана строка '12345678'. Сделайте из нее '21436587'. Строка, конечно же, может быть любой.
Задача 33
N-ный знак после запятой
Поделите число 10 на число 7. Найдите N-ный знак (например, 1000) после запятой у полученной дроби.
Задача 32
Следующий элемент ряда
Дан ряд: a, b, c, d ... x, y, z, aa, ab, ac, ... ay, az, ba, bb, ... bz, ... aaz.. Напишите функцию, которая получит следующий элемент по предыдущему.
Задача 31
Половина заглавных букв
Дана строка с маленькими буквами и пробелами. Сделайте заглавными половину случайных букв этой строки, игнорируя пробелы.
Занимательные задачи уходят на каникулы на две недели:)
Всем хорошего нового года!
Задача 30
Нарастающее разбиение строки
Дана строка с любыми символами. Для примера пусть будет такая:
'1234567890'
Нужно разбить строку в массив таким образом:
['1', '23', '456', '7890']
И так далее, пока символы в строке не закончатся.
Задача 29
Разбиение на слоги
Сделайте функцию, которая параметром будет принимать слово и возвращать массив его слогов.
Задача 28
Разварот таблицы
Дана некоторая HTML таблица. Сделайте так, чтобы были видны первые N строк этой таблицы. А остальная таблица будет раскрываться по клику на нее.
