JS-прожарка @jsgrill Channel on Telegram

JS-прожарка

@jsgrill


Задачки с лайв-кодинга по JavaScript

Решай, выбирай компанию, получай оферы без подготовки

JS-прожарка (Russian)

JS-прожарка – это Telegram-канал, где каждый желающий может попробовать свои силы в решении задачек с лайв-кодинга по JavaScript. Независимо от вашего уровня подготовки, здесь вы сможете найти интересные задания, которые помогут вам улучшить свои навыки в программировании.

Каждую неделю мы публикуем новые задачи, которые вы можете решать в удобное время. Благодаря этому каналу, вы сможете подготовиться к интервью в IT-компании, выбрать себе подходящую работу и получить оферы без предварительной подготовки.

Присоединяйтесь к JS-прожарке и станьте профессионалом в области JavaScript программирования!

JS-прожарка

19 Nov, 07:15


🔥 НОВАЯ ЗАДАЧКА

Принтер

Дана структура:

{
name: 'jsgrill',
children: [
{ name: 'mentour.js' },
{ name: 'community.json' },
{
name: 'images',
children: [
{ name: 'logo.png' },
{
name: 'codepen',
children: [
{ name: 'background.svg' },
{ name: 'tmbn.png' }
],
},
],
},
{ name: 'channel.js' },
],
}

Нужно распечатать ее вот так:

'jsgrill
  channel.js
  images
    codepen
      tmbn.png
      background.svg
    logo.png
  community.json
  mentour.js
'

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

12 Nov, 07:25


#задача_111

Пары

Нужно написать функцию, которая генерирует все корректные комбинации для двух пар круглых скобок:

generate(2); // ['()()', '(())']

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

06 Nov, 07:17


#задача_110

Скобки

Дана строка:

'[(js){}(grill)()]'

Нужно проверить что на каждую открывающую скобку приходится закрывающая и скобочные группы не пересекаются:

// true

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

29 Oct, 07:20


#задача_109

Полифилим Array.join

Дан массив:

[2, 0, 'jsgrill', -11]

Нужно сделать так:

'2!0!jsgrill!-11'

не используя названный метод класса

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

22 Oct, 07:53


#задача_108

Сжатие

Дан массив:

[3, 2, 1, 5, 6, -1, 10]

Нужно сжать соседние по числовому ряду числа в диапазон:

'-1,1-3,5-6,10'

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#вк #почта #яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

15 Oct, 06:51


#задача_107

Приоритеты

Дан словарь:

const priorities = {
guest: 1,
user: 2,
admin: 180,
moderator: 10,
vip: 50
}

и массив, где описаны доступные тебе поля из этого словаря:

const roles = [
'user',
'vip',
'guest'
];

Нужно найти поле с максимальным значением и вернуть его в результат:

// 'vip'

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

08 Oct, 07:51


#задача_106

Полифилим Promise.any

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

Вот некоторый особенности, которые помогут тебе начать:
- метод принимает массив промисов;
- метод возвращает промис;
- метод ждет фуфила любого из переданных промисов и сразу отдает его результат,
- либо собирает все ошибки в массив.

На примере с кодом будет понятнее,


ДАВАЙ РЕШИМ


Полезные ссылки:
полное описание и поведение метода можно посмотреть тут

Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#тбанк

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

01 Oct, 07:13


#задача_105

Счастливые числа

Дано целое число:

19

Нужно выяснить является ли оно счастливым

Чтобы это узнать делаем следующее:
- возводим каждую цифру в квадрат и складываем
(1 * 1) + (9 * 9) = 82;
- если результат равен 1, то возвращаем true, если нет повторяем
(8 * 8) + (2 * 2) = 68;
- пока не получим 1 или не поймем, что единичка нам тут не светит и это false.

Сэндбокс подготовлен,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

02 Jul, 06:30


🏖 ПРОЖАРКА НА КАНИКУЛАХ

Вернемся после 28-го сентябрь

А пока, вот парочка прикольных задачек, которые можно решить:

Машина

Матрица

JS-прожарка

25 Jun, 07:00


#задача_104

Факториал

Нужно вычислить произведение всех натуральных чисел от единицы до заданного числа:

factorial(3); // 6
factorial(5); // 120

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#авито #альфабанк

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

18 Jun, 06:28


#задача_103

Последовательность

Дана строка:

"abcdabcde"

Нужно найти в ней самую длинную последовательнось уникальных символов и вывести результат:

// 5

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#тбанк #яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

11 Jun, 06:53


#задача_102

Путь Значение

Дан объект:

const obj = {
a: {
b: {
c: 'd'
}
}
}

Нужно получить значение его поля, путь до которого приходит в формате строки:

get(obj, 'a.b'); // { c : 'd' }
get(obj, 'a.b.c'); // 'd'

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

04 Jun, 06:30


#задача_101

Mоно

Дан массив:

[1, 2, 5, 5, 5, 2, 1]

Нужно убедиться, что числа в нем либо только возрастают, либо только убывают:

// false

Сэндбокс подготовлен,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

28 May, 07:18


#задача_100

Комбинации

Дан массив:

[3, 4, 5, 6, 7]

Нужно найти в нем все комбинации из двух чисел сумма которых равна 11:

// [[4, 7], [5, 6]]

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#вайлдберриз

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

21 May, 06:33


#задача_99

Машина

Нужно реализовать банкомат:

class ATM {
vault = {
'5000': 0,
'2000': 0,
'1000': 0,
'500': 0,
'100': 0,
'50': 0
}

deposit(bills) { ... }

whithdrow(amount) { ... }
}

который умеет в пополнение и выдачу.

На примере с кодом станет понятнее,


ДАВАЙ РЕШИМ


Усложнение:
реализуй выдачу денег наиболее оптимальным способом

Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

14 May, 07:59


#задача_98

Маршрут

Дан массив билетов:

[
{ from: 'Astana', to: 'Bali' },
{ from: 'Moscow', to: 'Astana' },
{ from: 'Bali', to: 'SPb' },
]

Нужно расположить их один за другим чтобы получился непрерывный маршрут:

[
{ from: 'Moscow', to: 'Astana' },
{ from: 'Astana', to: 'Bali' },
{ from: 'Bali', to: 'SPb' }
]

Сэндбокс подготовлен,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#мтс #яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

07 May, 06:30


#задача_97

Переворот

Дано число:

-123

Нужно его перевернуть:

// -321

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#авито

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

23 Apr, 06:27


#задача_96

Нечетные

Дан массив:

[2, 4, 6, 8, 10, 3]

Нужно найти там нечетное число и вывести его индекс:

// 5

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#альфабанк

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

16 Apr, 06:21


#задача_95

Переговорки

Дан массив интервалов, на которые хотят забронировать комнату:

[[5, 10], [0, 30], [15, 20]]

Нужно проверить их на отсутствие пересечений и вернуть результат:

// false

Сэндбокс подготовлен,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#тбанк

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

09 Apr, 06:28


#задача_94

Морской бой

Дана карта:

[
[1, 1, 0, 1, 0, 0, 1, 1, 1, 1],
[0, 0, 0, 1, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 1, 0, 0, 0, 0, 0, 1],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 1],
[0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 1, 0, 0, 0, 0, 1, 0, 0, 0],
[0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 1, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 1, 1, 0, 0],
[0, 0, 1, 0, 0, 0, 0, 0, 0, 1]
]

Нужно посчитать на ней количество кораблей (групп единичек по вертикали или горизонтали) и вывести результат:

// 10

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#1с

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

02 Apr, 07:32


#задача_93

Директории

Дан относительный путь:

"./components/../__tests__/../__tests__/../components/Navbar/./Link"

Нужно сделать из него абсолютный:

"components/Navbar/Link"

Сэндбокс подготовлен,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#тбанк

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

26 Mar, 09:58


#задача_92

Глубокое копирование

Дан объект:

{ a: { b: { c: [1] }}, d: 2 }

Нужно создать его идентичную копию.

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#яндекс

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

19 Mar, 07:38


#задача_91

По порядку

Дан массив:

[2, 3, 1, 2, 3, 5]

Нужно найти самую длинную последовательность чисел, которые увеличиваются на плюс один и вывести ее длину:

// 3

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#вк

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏

JS-прожарка

13 Mar, 08:45


⌛️ ТОП 3 ASYNC

Самые часто встречающиеся задачки на асинхронность:

Полифилим Promise.all

Ретрай

Шина запросов

Ты уверен, что решишь каждую наиболее оптимальным способом?

JS-прожарка

12 Mar, 07:29


#задача_90

Сумма диапазона

Дан массив целых чисел:

[-2, 0, 3, -5, 2, -1]

и набор диапазонов:

[[0, 2], [2, 5], [0, 5]]

Необходимо сложить числа которые попадают в диапазоны наиболее оптимальным способом и вернуть результат:

// [1, -1, -3]

Выглядит совсем просто,


ДАВАЙ РЕШИМ


Варианты решения:
см. в комментариях по тегу #решение

Попадалась в компании:
#тбанк

Решил(а) лучше других?
Покорми Динозаврика
(поделись своим вариантом, заверни в файлик, укажи сложность, добавь соответствующий тег)

Было сложно?
Го в реакции, как она тебе фром 1 ту 10?

Что то не так?
Пиши не стесняйся, все поправим - сделаем в лучшем виде

Понравилось?
Поделись с другом

Удачного дня! 🙏