Занимательные задачи JavaScript
788 subscribers
8 links
Ваша цель: решить задачу максимально изящно и просто. Предлагайте свои варианты решения в комментариях. Задачи выходят каждый день в 14.00.
Download Telegram
Задача 239
Замена сегмента пути

Дан некоторый путь к папке '/aaa/bbb/ccc/'. Поменяйте заданный сегмент пути на новое значение. К примеру, поменяем второй сегмент пути: '/aaa/+++/ccc/'
Задача 240
Звуки кнопок

Даны три кнопки. Сделайте так, чтобы по клику каждая кнопка издавала свой звук.
Задача 241
Назад по истории

Дана кнопка. По клику на эту кнопку заставьте браузер вернуться назад по истории браузера.
Задача 242
Увеличение сегмента пути

Дан некоторый путь к папке, содержащий числа '/1/2/3/'. Увеличьте заданный сегмент пути на единицу. К примеру, увеличим второй сегмент пути: '/1/3/3/'
Задача 243
Изменение GET-параметра

Пусть в адресной строке браузера у вас написано 'index.html?page=3'. Увеличьте значение параметра page на единицу. Изменение должно произойти прямо в адресной строке.
Задача 244
Получение имени файла

Дан некоторый путь, ведущий к папке '/aaa/bbb/ccc/' или к файлу '/aaa/bbb/ccc.html'. Получите из пути имя файла с его расширением, если это возможно.
Задача 245
Получение реферера

Дана кнопка. По клику на кнопку выведите адрес страницы, с которой был осуществлен переход на текущую страницу.
Задача 246
Язык браузера

Дана кнопка. По нажатию на кнопку выведите язык браузера пользователя.
Задача 247
Язык запроса

Пусть в первом сегменте адреса задается язык пользователя: '/ru/bbb/ccc/'. Напишите программу, которая получит этот язык.
Задача 248
Соединение центров

Даны два дива. Соедините линией центры этих дивов.
Задача 249
Соединение углов

Даны два дива. Соедините линией ближайшие углы этих дивов.
Задача 250
Площадь с учетом перекрытий

На странице есть дивы, которые могут накладываться друг на друга. Найдите суммарную площадь дивов с учетом того, что наложение дивов считается только один раз.
Задача 251
Множественное соединение центров

Даны три дива. Соедините линией центры этих дивов.
Задача 252
Снег

Напишите скрипт, который сделает снег на странице браузера.
Задача 253
Описанный круг

Дан квадратный див. Напишите скрипт, который опишет круг вокруг этого дива.
Задача 254
Расширяем строки

Сделайте так, чтобы у всех строк появился метод ucFirst, который будет переводить первый символ строки в верхний регистр.
Задача 255
Подсчет слов

В текстареа вводится текст со словами. По потери фокуса сделайте таблицу, в первой колонке которой будут слова из текста, во второй колонке - количество раз, которое это слово встречается, а в третьей - процентное содержание этого слова в текста.
Задача 256
Сортировка по количеству

Дан массив:
[
[1, 2, 3],
[1, 2],
[1, 2, 3, 4, 5],
[1],
[1, 2, 3, 4],
]

Отсортируйте элементы массива по возрастанию количества элементов в подмассиве.
Задача 257
Сортировка по сумме

Дан массив:
[
[2, 4, 5],
[1, 2, 3],
[0, 1, 1],
[5, 7, 1],
]

Отсортируйте элементы массива по возрастанию суммы элементов подмассива.
Задача 258
Пирамидка

Выведите на экран следующую пирамидку:
x
xx
xxx
xxxx
xxxxx
Задача 259
Слияние в числа

Дан массив, подмассивы которого содержат цифры:
[
[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
]

Слейте элементы этого массива в числа:
[123, 456, 789]