Задачи На Собеседовании Junior / Middle Frontend Developer. Массивы в JavaScript.

  Рет қаралды 60,455

wise.js 

wise.js 

Күн бұрын

Разбираем задачи которые часто спрашивают на собеседовании Junior и Middle Frontend Developer. В этом ролике решаем часто задаваемые задачи по массивам в JavaScript. Разбираем разные способы решения задач + некоторые фишки в JavaScript. Напишите в комментариях какие еще вопросы вам задавали на Frontend собеседованиях и как вы с ними справились!
Таймкоды:
00:00 - Сумма элементов массива. №1.
00:51 - Сумма элементов массива. №2.
01:36 - Сумма элементов массива. №3.
02:12 - Максимальный / минимальный элемент массива. №1.
03:10 - Максимальный / минимальный элемент массива. Вариации первого способа.
03:50 - Максимальный / минимальный элемент массива. №2.
04:20 - Максимальный / минимальный элемент массива. №3.
04:46 - Максимальный / минимальный элемент массива. №4.
05:32 - Сортировка массива.
06:52 - Сортировка массива с объектами по их полям (по алфавиту и по возрастанию).
09:50 - Развернуть массив без .reverse().
11:29 -💡Сможешь понять этот код?
12:10 - Отфильтровать falsy значения
Приятного просмотра! Буду благодарен за поддержку в виде комментария и лайка!
👉 Исходный код, чат, воркшопы и поддержка канала: / wisejs
✔️ Если хочешь изучать программирование со мной, не забудь подписаться :)
kzbin.info/door/Oxq...
✔️ Мой телеграм канал: t.me/joinchat/RVq-cmt6n1SJRS7Z
#собесесдованиеjavascript #собеседованиеfrontend #массивы #javascript #frontend #array #juniorjavascript #middlejavascript #вопросынасобеседовании

Пікірлер: 181
@wisejs
@wisejs 2 жыл бұрын
Домашнее задание: Найти дубликаты (повторяющиеся элементы) в массиве. Решение присылайте в комментарии 👇
@imthebest8000
@imthebest8000 2 жыл бұрын
uniqueNumbers = new Set(array)
@9mikaela
@9mikaela 2 жыл бұрын
@@imthebest8000 это не найдёт дубликаты
@imthebest8000
@imthebest8000 2 жыл бұрын
@@9mikaela да, я просто не правильно прочёл задание
@eugenedoroshenko7366
@eugenedoroshenko7366 2 жыл бұрын
Для числового массива: arrayWithDublicates.sort((x1, x2) => x1 - x2).reduce((acc, next, index, arr) => next === arr[index + 1] ? [...acc, next] : acc, []). Для других типов данных меняем сортировку, которая была подробно рассмотрена в ролике👆
@ArtyomSamsonchik
@ArtyomSamsonchik Жыл бұрын
array.filter( (el, i) => i !== array.lastIndexOf(el) )
@romanpohribniak8471
@romanpohribniak8471 2 жыл бұрын
Спасибо,Максим,что продолжаете радовать нас отличным контентом,очень крутое видео!
@cult2839
@cult2839 Жыл бұрын
Контент богов! Наконец-то я нашел то, что искал. Сколько не гуглил задачи на массивы, выдаются сразу довольно сложные примеры, на которых разобраться в теме очень сложно. А тут как раз базовые задачи, да еще и с несколькими вариантами решений. Спасибо огромное!
@user-xe7sp3pr7t
@user-xe7sp3pr7t 2 жыл бұрын
Как раз прохожу собесы сейчас. То, что нужно как раз👌 . Спасибо 😉
@konstantin-lysenko
@konstantin-lysenko 2 жыл бұрын
Дружище, ты просто машина, я бы сказал - живой калькулятор) Подписка и лайк однозначно!
@samolevich
@samolevich Жыл бұрын
Классное видео. Интересные примеры. Спасибо
@slapiinf518
@slapiinf518 2 жыл бұрын
Классный видосик. Гоу теперь про объекты :)
@GrandAlexandr
@GrandAlexandr 2 жыл бұрын
благодарю за момент с сортировкой, на прошлом собесе не смог внятно ответить, а тут вот оно как))
@mxrquez7692
@mxrquez7692 Жыл бұрын
Для разворачивания массива можно воспользоваться методом массива reduceRight, который работает как обычный, но итерируется с конца массива const reversedArray = array.reduceRight((accum, elem) => { accum.push(elem); return accum; }, []);
@SuperPirks
@SuperPirks Жыл бұрын
array.reduceRight((acc, item) => { return [ ...acc, item ] }, []) Пушить в аккумулятор плохая практика
@BOCbMOU
@BOCbMOU Жыл бұрын
@@SuperPirks в каком месте это плохая практика? Вот клонировать массив на каждой итерации - это действительно плохая практика.
@vjachet
@vjachet Жыл бұрын
​@@SuperPirks лучше acc.concat(item)
@Veremey
@Veremey 2 жыл бұрын
Great job 🔥 Keep on going!
@mykhailostepanishchev6472
@mykhailostepanishchev6472 2 жыл бұрын
Классный выпуск,большое спасибо! js, reduce, map, filter, sort, pop.
@wisejs
@wisejs 2 жыл бұрын
Спасибо за ключевые слова!
@robbyandreasian
@robbyandreasian Жыл бұрын
Полезно ! спасибо !
@kitaimanit6000
@kitaimanit6000 Жыл бұрын
спасибо, контент огонь
@valeriathor1597
@valeriathor1597 11 ай бұрын
12:00: вторым аргументом назначаем this = наш array. первым аргументом, т.е. в качестве вызываемого колбэка передаем метод массива pop(), который внутри обращается к this т.е. к массиву, у которого вызывается. если я правильно поняла, когда что-то передается в качестве аргумента оно теряет контекст, потому что это вроде как эквивалентно присвоению переменной. поэтому нам нужно передать контекст вторым аргументом
@dmitriystoyanov933
@dmitriystoyanov933 2 жыл бұрын
Сейчас готовлюсь к собесам на новую работу, ставил на паузу и решил всё, НО некоторые твои варианты взорвали мозг) реально круто!
@Yupitrer
@Yupitrer Жыл бұрын
Как новая работа?
@dmitriystoyanov933
@dmitriystoyanov933 Жыл бұрын
@@Yupitrerда жестко бывает т.к. компания небольшая и должность размыта.. я типа фронтенд, но так же и бекенд писать приходится, и на AWS колупаться постоянно.. такое..но, бабки платят и хорошо;)
@adamarturov6361
@adamarturov6361 Жыл бұрын
Какие задачи по алгоритмам пригодились для собеса ?
@dmitriystoyanov933
@dmitriystoyanov933 Жыл бұрын
@@adamarturov6361 это год назад уже было, не помню, но может быть что угодно из них.
@max_mgtow
@max_mgtow 2 жыл бұрын
Привет ✌️ Спасибо 🔥👍
@assetdev1859
@assetdev1859 Жыл бұрын
ты крутой! я подписался) нажал лайк, надеюсь у вас будут выходить такие позновательные видео
@dmaberlin
@dmaberlin 2 жыл бұрын
спасибо , продолжай!
@theoty-js-react
@theoty-js-react 2 жыл бұрын
👌 буду решать
@ArtcticUFO
@ArtcticUFO Жыл бұрын
Отличный видос)
@haibova_irisha
@haibova_irisha 10 ай бұрын
привет . спасибо за видео
@andreykrav3274
@andreykrav3274 2 жыл бұрын
it's most popular information! thanks
@user-mh2fz7tx3j
@user-mh2fz7tx3j 2 жыл бұрын
Класс! Сделай еще задачки с циклами))
@wisejs
@wisejs 2 жыл бұрын
Хорошая идея)
@volshebniyfonar
@volshebniyfonar 11 ай бұрын
Перевернуть массив можно и нужно за O(n) и без доппамяти. Нужно в цикле от 0 до length/2 менять местами i-ый элемент с length - 1 - i
@user-yj4ln8mi6b
@user-yj4ln8mi6b 2 жыл бұрын
Делюсь опытом, была задача на собеседовании написать функцию для проверки слова на палиндром, там работа и с массивом, и с строкой. Кто не знает, что это такое и как ее решать, советую глянуть.
@zizu2499
@zizu2499 9 ай бұрын
А где найти видео не смог найти видео с решением задачи
@user-on4di6lb3j
@user-on4di6lb3j 6 ай бұрын
А чего там решать? Слово в массив, массив развернуть и склеить в слово, результат сравнить с первоначальный словом. Можно с циклом заморочится или рекурсией. Для зарядки ума.
@raff_m_d6971
@raff_m_d6971 Жыл бұрын
От души
@user-yv4ou3jl8y
@user-yv4ou3jl8y 2 жыл бұрын
Привет, найти самое редковстречающееся значение в числовом массиве, или сгенерировать n массив, заполненный рандомными числами от min до max)
@wisejs
@wisejs 2 жыл бұрын
Тоже попадалось с рандомными числами
@lambdius
@lambdius 2 жыл бұрын
В версиях node до 12, можно обмануть систему, т.к. сорт на малых объемах массива использует сортировку слиянием, мы можем произвести следующиее, a.sort(e=>1), еденицу можно заменить на любое положительное число, оно будет выполнять роль положительного резульятата сравнения элементов слева на право. Если уж идти по тропе шизокода, стоит писать все в круглых скобках, дабы избавиться от ключевых слов, методы вызывать следующим образом - a=[3,4,5,1,2,6], [j,o,i,n]=`join`, eval(a[j+o+i+n]`+`) и многое другое ))))) И решение - a.map(a.pop,[...a]), взято из задачи 3 kyu на CW ))))) У тебя хороший контент по технологиям, но задачки, это совсем другое, все тонкости JS врядли выйдет разобрать, да это и не нужно обычным людям. Ставлю этому видику 7kyu ))))
@wisejs
@wisejs 2 жыл бұрын
Интересно 🧐
@lambdius
@lambdius 2 жыл бұрын
@@wisejs Если человек хочет впечатлить собеседующего, рекомендую провести тутор - как писать код столбиком, по 1 символу в строке ))))
@wisejs
@wisejs 2 жыл бұрын
@@lambdius 😂
@denmccormik7654
@denmccormik7654 2 жыл бұрын
Дз: создать объект где ключом будут значения элементов массива, а значением - количество их повторений и в зависимости от задачи перебрать объект.
@wisejs
@wisejs 2 жыл бұрын
Все так, но вместо объекта лучше Map 😆
@notIdeal78
@notIdeal78 5 ай бұрын
09:50 const arrow = [1,2,3,4,5,6,7,9,12] console.log(arrow.sort(() => {return -1})); тоже идеально будет работать
@klash1401
@klash1401 3 ай бұрын
отлично решение, вот его упрощенная запись (без return и фигурных скобок): arrow.sort(() => -1)
@loadmore
@loadmore Жыл бұрын
Обычно в продакшене готовые апи юзаешь, Бек уже все отфильтровал )
@velikorossnationalist4259
@velikorossnationalist4259 Жыл бұрын
В предпоследней задаче можно было бы воспользоваться методом sort: const arr = [1, 2, 3, 4, 5, 6, 88]; const reversed = arr.sort((a, b) => { return b - a; }); console.log(reversed);
@PlaymoreDev
@PlaymoreDev Жыл бұрын
не можно, потому что задача развернуть а не отсортировать. вот с таким массивом не будет работать верно: const arr = [1, 22, 3, 4, 5, 6, 88]
@whiteguards43
@whiteguards43 Жыл бұрын
не понял про array.filter(boolean) почему работает? Если весь массив передается, почему он возвращает все те что тру ведь boolean === true равно фолс
@mathiaswei8715
@mathiaswei8715 2 жыл бұрын
Спасибо, array.filter(item => item) тоже сработает
@Max_Ineos
@Max_Ineos 10 ай бұрын
Решение второй задачи, зачем мудрить?)) const max = Math.max(...array); const min = Math.min(...array);
@thecatwrites9731
@thecatwrites9731 2 жыл бұрын
прикольный канал, не помню откуда я тебя взял
@wisejs
@wisejs 2 жыл бұрын
🧐
@getshou
@getshou Ай бұрын
а почему, если не использовать деструктуризацию в выражении array.map(array.pop, array), вернет [6,6,5,4,,,] ?
@BobbyBob21
@BobbyBob21 3 ай бұрын
За eval по рукам надо бить))
@yuriiyurii6656
@yuriiyurii6656 Жыл бұрын
map(callbackFn, thisArg) Array(array.length).fill(null).map([].pop, [...array]); де: Array(array.length).fill(null) - масив будь-яких значень аналогічної довжини [].pop - потрібна сама функція [...array] - масив, з якого на кожному кроці буде забиратися останнє значення. Якщо без ... (деструктиризації), тоді очистить попередній масив array
@vjachet
@vjachet Жыл бұрын
array.map([].pop, [...array])
@senyashtyak
@senyashtyak 8 ай бұрын
Найти максимальный элемент массива через сортировку это гениально
@LuNa-om8ci
@LuNa-om8ci 3 ай бұрын
Это был сарказм? Просто я новичок и немогу пока точно понять хорошо это или плохо.
@senyashtyak
@senyashtyak 3 ай бұрын
@@LuNa-om8ci объясню проще: вместо линейной сложности мы используем квадратичную
@user-sy7cn6vc1m
@user-sy7cn6vc1m 4 ай бұрын
лайк за localeCompare
@asifabbasov3801
@asifabbasov3801 9 ай бұрын
Можно больше задач по JS c собеседований
@granmini
@granmini 2 жыл бұрын
Есть еще функция Есть еще функция getMaxOfArray ([1, 2, 3])
@kirushaa
@kirushaa 2 жыл бұрын
Привет ) Скажи пожалуйста что за шрифт у тебя в web-storm ? Заранее спасибо )
@wisejs
@wisejs 2 жыл бұрын
Дефолтный, не менял
@kirushaa
@kirushaa 2 жыл бұрын
@@wisejs спасибо )
@user-zd6yk9pi1y
@user-zd6yk9pi1y 2 жыл бұрын
jetbrains mono
@hyannikolas697
@hyannikolas697 2 жыл бұрын
Задача. Есть четыре массива по 4 цифры, цифры разбросаны, найти максимальное число , и вывести новый массив максимальных чисел.
@wisejs
@wisejs 2 жыл бұрын
Сводится к поиску максимального числа в матрице (насколько я понимаю)
@andrTaylor
@andrTaylor Жыл бұрын
Альтернатива для reverse) array.reduceRight((acc, item) => [...acc, item], []) Это когда лень писать for с обратным циклом))
@SerzhNesteruk
@SerzhNesteruk 3 ай бұрын
Спасибо, что поделились решением! Способ вполне работающий, но у него всё же квадратичная сложность по времени из-за пепесоздания массива на каждой итерации. Можно переписать примерно так: array.reduceRight((acc, item) => (acc.push(item), acc), []) ...или даже решить через map: array.map((_, i, arr) => arr.at(~i))
@andrTaylor
@andrTaylor 3 ай бұрын
@@SerzhNesteruk с первым вашим решением согласен, да, но второе читается сложновато)) заставляет залезть в доку и чекнуть инфу про тильду и at
@user-jf3uf2ur4e
@user-jf3uf2ur4e 2 күн бұрын
eval это прикол конечно, думаю лучше так не делать на собеседовании 😅
@lolphdundgren4328
@lolphdundgren4328 Жыл бұрын
8:38 ошибка в строке 23, в if-е должен стоять ===.
@user-ni4oh6rs3e
@user-ni4oh6rs3e Жыл бұрын
В последней задаче зачем в иф делать !! если все что в условии и так приведется в бул значение
@user-rj6ro3mp1p
@user-rj6ro3mp1p 2 жыл бұрын
Стало интересно и пошел разбираться. С некоторым успехом вроде что-то вышло.😁 Для данной записи: [...ourArr].map(array.pop, ourArr) - array.pop - это мы просто передаем метод массива, аналогично и этой записи: [].pop Метод array.pop удаляет последний элемент массива и возвращает его. Второй агрумент "ourArr" для метода map нужен для того, чтобы именно было что возвращать в новый массив, который создает метод map. Значение для нового элемента массива возвращается на каждой итерации из ourArr, который мы передали для метода [].pop в качестве this. Новый массив [...ourArr] нужен только для того, чтобы было по чему нам итерироваться. Будет аналогично и работать так же для записи: [undefined, undefined, undefined, undefined, undefined].map(array.pop, ourArray) Кажется, что я только запутал.😂
@wisejs
@wisejs 2 жыл бұрын
Ход мыслей верный 🙂
@user-rj6ro3mp1p
@user-rj6ro3mp1p 2 жыл бұрын
@@wisejs Ну и хорошо значит.😁
@Kaorichvagon
@Kaorichvagon 2 жыл бұрын
Array.from( new Array(arr.length) , () => arr.pop() ) в пустой массив той же длины накидываются попнутые значения. Так это выглядит в читаемой реализации, хотя всё равно способ идиотский, так как происходит мутация исходного массива. Еще при этом зачем-то усложнил получением ссылки на метод массива и прокинутым в неё this. Любителей всё усложнять везде же любят)
@SerzhNesteruk
@SerzhNesteruk 3 ай бұрын
​@@Kaorichvagon Здесь, кстати, тоже можно поумничать с Array.prototype.pop и thisArg, но хотя бы сохранив иммутабельность исходного массива: Array.from(arr, [].pop, [...arr]) А учитывая, что вторым аргументом Array.from является mapFn, то можно просто использовать сам метод map: arr.map([].pop, [...arr]) Но можно решить и рациональнее: arr.map((_, i, arr) => arr.at(~i))
@user-sz7pu7qj3z
@user-sz7pu7qj3z 2 жыл бұрын
Стосовно розвертання масиву через map(array.pop, array) функція видаляє останній елемент масиву і повертає його, який в свою чергу записується в результат функції map. А в якості this для метода pop передається array, який скорочується.
@Shperung
@Shperung 7 ай бұрын
const max = arr.toSorted((a, b) => b - a)[0];
@JohnDoe-hw1sm
@JohnDoe-hw1sm Жыл бұрын
Касательно варианта с разворотом массива, можно еще воспользоваться reduceRight. =) arr.reduceRight((p, c) => [...p, c], []);
@Witcher-simple-YouTube
@Witcher-simple-YouTube 8 ай бұрын
Это websrorm ?
@pasha2927
@pasha2927 2 жыл бұрын
Домашнее задание: Можно использовать new Set... [...new Set(someArray)]
@wisejs
@wisejs 2 жыл бұрын
Не убрать их, а найти :)
@b1sh855
@b1sh855 7 ай бұрын
const arrey = [1, 2, 3, 4] const xw = arrey.reduce((x, y) => x + y); console.log(xw) это по короче
@kittycat5403
@kittycat5403 2 жыл бұрын
а разве нельзя развернуть массив тем же методом sort, только возвращать x2 - x1 вместо x1 - x2?
@kittycat5403
@kittycat5403 2 жыл бұрын
и в filter просто использовать сам текущий item без boolean
@wisejs
@wisejs 2 жыл бұрын
x2 - x1 - отсортирует по убыванию
@wisejs
@wisejs 2 жыл бұрын
да, так можно, но не особо очевидно как по мне
@user-vu6hn4ul2i
@user-vu6hn4ul2i Жыл бұрын
Нет, нельзя. Если массив изначально не сортирован, то такой "разворот" вернёт сортированный.
@senyashtyak
@senyashtyak 8 ай бұрын
Никто не пишет вручную алгоритмы, вместо этого используют lodash, в котором они реализованы
@oldiBerezkoo
@oldiBerezkoo 4 ай бұрын
3:11 через sort было бы легче и быстрее сделать как мне кажется
@Goddamn_Right
@Goddamn_Right Ай бұрын
4:19
@phat80
@phat80 Күн бұрын
Такой легкотни на собеседовании быть просто не может. Это даже не уровень джуна. Да, задачи тоже на массивы могут быть, но они будут куда сложнее и не такими очевидными, да еще и с особыми требованиями, типа сделать то-то, не используя что-то (например, какие-то стандартные методы) или не используя дополнительную память, либо показать алгоритм с заданной сложностью. В общем, такие задачи могут быть лишь на собеседовании в какой-то сказочной компании. А таковых давно не существует.
@kosmodemyan_sugar
@kosmodemyan_sugar 8 ай бұрын
ну не знаю не знаю, мне и на джуна задачи сложнее попадались
@dogfrogfog
@dogfrogfog 2 жыл бұрын
тернарным, а не тренарным
@GagikHarutyunyan_dev
@GagikHarutyunyan_dev 2 жыл бұрын
Последний пример мутирует предыдущий массив, это плохо)
@wisejs
@wisejs 2 жыл бұрын
Последний пример какой задачи?
@GagikHarutyunyan_dev
@GagikHarutyunyan_dev 2 жыл бұрын
Развернуть массив
@wisejs
@wisejs 2 жыл бұрын
не всегда плохо, зависит от требований
@vjachet
@vjachet Жыл бұрын
@@wisejs но сначала-то все примеры без мутации что мешало array.map([].pop, [...array]) ? если мутировать оригинальный массив - надо было и с двумя указателями дать пример
@deantek
@deantek Жыл бұрын
а нельзя в максимальном или минимальном элементе массива сделать так? const arr = [3, 2, 4, 5, 1] const min = arr.sort()[0] const max = arr.sort()[arr.length - 1]
@user-ui1fe2bd9w
@user-ui1fe2bd9w Жыл бұрын
да кнчн
@kindaart7451
@kindaart7451 Жыл бұрын
Если в массиве будет 100, то max у Вас будет равна 5, что будет ошибкой.
@azizoid
@azizoid 2 жыл бұрын
просили найти второе и третье максимальное значение массива перебрав его всего один раз
@wisejs
@wisejs 2 жыл бұрын
Как решали? Сортировкой?
@azizoid
@azizoid 2 жыл бұрын
@@wisejs сортировкой делать было нельзя. Поэтому прошелся обычным for-ом. Но и это их не устроило. Сказали мой алгоритм слишком затратный. Это было тюлет 3 назад
@wisejs
@wisejs 2 жыл бұрын
@@azizoid O(n2 если 2 раза перебирал. Хотели, наверное, быстрее.
@plart2006
@plart2006 2 жыл бұрын
@@wisejs простой сортировкой эту задачу не решить, потому что могут быть дубликаты, придется set еще городить, это не рационально upd: зато читабельно, и чаще всего на фронте глубоко пофиг, сколько займет операция с массивом - 3мс или 10мс, а вот разбираться с кодом из кучи циклов нахрен никому не упало
@plart2006
@plart2006 2 жыл бұрын
let max = -Infinity, second = -Infinity, third = -Infinity for (const value of arr) { if (value > max) { [second, max] = [max, value] // save previous max } else if (value < max && value > second) { second = value // new second biggest third = second // new third biggest } else if (value < second && value > third) { third = value // new third biggest } } return [second, third]
@user-yh6jq7iz2u
@user-yh6jq7iz2u 10 ай бұрын
каким каким оператором? тренарным? 😂 может тернарным?
@chinzano
@chinzano 2 жыл бұрын
Вопросы на уровне стажёра, на Джуна уж посложнее задачи спрашивают, как минимум, средний уровень с leetcode
@wisejs
@wisejs 2 жыл бұрын
Собеседование довольно стрессовый процесс. И даже, порой простые вопросы и задачи вызывают трудности. Даже на 1 задачу среднего уровня нужно выделять все собеседование, а ведь спросить хочется не только 1 задачу.
@ruslantsarenko3036
@ruslantsarenko3036 2 жыл бұрын
Сомнительно чтобы давали настолько простые задачи на собесе
@plart2006
@plart2006 2 жыл бұрын
Если просят крутить деревья, лучше сразу уйти. Потом такие особи крутят тебе мозги
@McNeelone
@McNeelone 2 жыл бұрын
@@plart2006 по подробней можно?
@KrivovNikolay
@KrivovNikolay Жыл бұрын
@@McNeelone я думаю он имел ввиду работу с DOM элементами , если сразу просят работать с ними ,то лучше сразу покинуть собеседование... Я так его понял
@Snezh88k
@Snezh88k Жыл бұрын
@@KrivovNikolay бинарные деревья поиска
@user-vu6hn4ul2i
@user-vu6hn4ul2i Жыл бұрын
@@plart2006 ну такой себе совет. Если ты умеешь крутить деревья, то почему бы и не покрутить? Если не умеешь, то да, можно сразу уходить: у тебя и у компании разные взгляды на то, что ты должен знать и уметь на той позиции, куда тебя собеседуют. И консенсус вряд-ли получится.
@user-xn2cr5oe4p
@user-xn2cr5oe4p 10 ай бұрын
Почему ты таким устаревшим циклом пользуешься? И ещё вводишь в заблуждение новичков! А также тут многие пишут что таких задач нет на собесах! Зря потерянное время …
@user-mn3ic2ct8d
@user-mn3ic2ct8d 2 жыл бұрын
Сделать плоский массив, нельзя использовать flat
@pinkiseven659
@pinkiseven659 2 жыл бұрын
А также нельзя использовать рекурсию
@wisejs
@wisejs 2 жыл бұрын
А так же, нельзя использовать массив 😆
@pinkiseven659
@pinkiseven659 2 жыл бұрын
@@wisejs будет тогда сложно
@n0rison
@n0rison 8 ай бұрын
ну middle вряд ли
@user-tb3mm6dl3z
@user-tb3mm6dl3z Жыл бұрын
Почему этот парень не моргает а я сразу не понял че не так🤔
@plart2006
@plart2006 2 жыл бұрын
Чаще задвигают всякую теоретическую хрень типа прототипов и принципов ооп. Как говорится, особый js для собесов, который в реальной работе никогда не используется
@wisejs
@wisejs 2 жыл бұрын
Принципы ООП не связаны с js и их у любого программиста могут спросить
@alexandroppolus
@alexandroppolus 2 жыл бұрын
Искать максимум в массиве через сортировку - это дичь. Хуже неё только последний способ Math.max(...arr), приводящий к переполнению стека на длинном массиве. Автор, не учи джунов всякому плохому )
@carry-on-chaos4032
@carry-on-chaos4032 Жыл бұрын
а как правильно? я делал через reduce
@alexandroppolus
@alexandroppolus Жыл бұрын
@@carry-on-chaos4032 через reduce вполне норм. Ну или обычным циклом.
@pkorneev5226
@pkorneev5226 10 ай бұрын
junior еще бы поверил для первой легкой задачки на собеседовании, но точно не мидл, это уровень интерна, не более
@user-ms5vu1zp9d
@user-ms5vu1zp9d Жыл бұрын
На собесе такое не просят решать. Это детсадовские задачи.
@benchik100
@benchik100 Жыл бұрын
😵😵😵 не лишайте меня мотивации.
@oleksandr_h
@oleksandr_h 2 жыл бұрын
const A = [1, 2, 3, 4, 5, 2, 1]; console.log([...new Set(A.filter((a) => A.length - A.filter((f) => f != a).length > 1))]);
@DreamMaster_ru
@DreamMaster_ru 9 ай бұрын
array.reduce((acc:number, next:number) - Почему у меня аккумуляторы не работают? Все примеры из видео с аккумулятормаи у меня не пашут. Хотя reduce вот так работает: const array = [1, 2, 2, 4, 5, 6, 6, 100]; let sum = array.reduce(function (currentSum, currentNumber) { return currentSum + currentNumber } , 0)
@bjdsn
@bjdsn 2 жыл бұрын
function duplicate(nums) { return new Set(nums.filter(n => nums.indexOf(n) !== nums.lastIndexOf(n))) }
@wisejs
@wisejs 2 жыл бұрын
Крутое решение 👍
@Ushakov.M
@Ushakov.M 2 жыл бұрын
Только Big O у решения большая
@user-xn2cr5oe4p
@user-xn2cr5oe4p Ай бұрын
Зашёл увидел старющий как мир цикл и сразу закрыл видео 🤮
Learn React Hooks: useEffect - Simply Explained!
14:07
Cosden Solutions
Рет қаралды 107 М.
Методы массивов JavaScript. IndexOf
14:12
WebDev с нуля. Канал Алекса Лущенко
Рет қаралды 35 М.
Маленькая и средняя фанта
00:56
Multi DO Smile Russian
Рет қаралды 5 МЛН
1🥺🎉 #thankyou
00:29
はじめしゃちょー(hajime)
Рет қаралды 68 МЛН
Why? 😭 #shorts by Leisi Crazy
00:16
Leisi Crazy
Рет қаралды 46 МЛН
#2 Собеседование смелого Frontend Middle разработчика
1:42:53
Отсобеседование
Рет қаралды 72 М.
SENIOR on JUNIOR Javascript Developer interview
26:35
BELOV
Рет қаралды 272 М.
Техническое собеседование на JavaScript разработчика | Junior fullstack-разработчик
38:14
Эльбрус Буткемп: школа программирования
Рет қаралды 11 М.
Маленькая и средняя фанта
00:56
Multi DO Smile Russian
Рет қаралды 5 МЛН