Frontend interview. Ilnura, the first job right after Yandex Practicum
HTML-код
- Опубликовано: 19 июн 2024
- Друзья, наконец-то публикуем новый выпуск с фронтенд собеседованием! Ураа! 🎉
Сегодня у нас на интервью Ильнура, недавняя выпускница вуза и учебных курсов. Очень активная и целеустремленная разработчица! Еще во время обучения она сама нашла стажировку и после этого устроилась на свою первую оплачиваемую работу - также во время обучения на фронтенд-разработчика.
Сегодня Ильнура проходит собеседование на должность Junior Front-end developer.
Надеюсь, после этого интервью, многие вдохновятся ее примером! 🎈
✅ RUclips-канал Ильнуры, где она рассказывает подробно про свое обучение:
/ @betelgeuse.21
👍 Друзья, поддержите, пожалуйста, Ильнуру в комментариях! Поставьте ей большой красивый лайк и напишите что-то хорошее! 👍
🤓 Все, кто хотел бы поучаствовать в нашем проекте и попробоваться в прохождении тестового интервью - заполните, пожалуйста, форму: forms.gle/c1Z6wptfcv2rXtNr8
00:00:00 Интро
00:00:38 Знакомство
00:01:15 Про учебу
00:04:02 Про стажировку
00:05:12 Про работу
00:06:41 Какие обязанности на текущей работе
00:08:19 Про Яндекс Практикум
00:08:48 Как с английским
00:10:04 Когда лучше использовать id а когда class
00:13:06 В чем разница стилей с селектором id и класса
00:13:41 Различные виды позиционирования элементов
00:16:52 Какие свойства media отличные от screen знаешь
00:18:54 Flash of Unstyled Content
00:25:56 Как можно сверстать стрелочку
00:28:24 В чем разница между == и === в js
00:29:27 Как удалить обработчик события
00:30:21 Про return из функции
00:32:49 Про изменение ссылки на объект
00:36:54 Пересечение массивов (простой вариант задачи)
00:41:16 Какие бывают состояния у Promise
00:42:48 Задача про var и setTimeout
00:46:43 Разница между Object.getOwnPropertyNames и Object.keys
00:50:26 При клике на кнопку нужно удалить кнопку и отрисовать 2 новых
01:03:11 Про arrow function и обработчик события
01:09:02 Про this внутри arrow function
01:13:20 Чем отличаются PUT и POST запросы
01:14:38 Для чего нужен package-lock.json
01:18:42 Что такое staging area в git
01:20:11 В чем разница между merge и rebase
01:23:12 Какие pet project’ы делала
01:25:20 Feedback
01:38:47 Заключение
👍Друзья, поддержите наш канал и это видео лайком и репостом! 🙌
👍🤩 Будем благодарны за поддержку нашего канала на Патреоне: / frontendscience
---
Если видео было для вас полезным, ставьте лайк и поделитесь им с друзьями.
Подписывайтесь на наш канал: bit.ly/fs-ytb
---
Присоединяйтесь к нам в соцсетях:
FB: / frontendscience
Instagram Сергея Пузанкова: / puzankovcom
Заходите на наш сайт: frontend-science.com/
---
Music: Blue Wednesday
__
#itсобеседование #frontend #собеседование
👍 Друзья, поддержите, пожалуйста, Ильнуру в комментариях! Поставьте ей большой красивый лайк и напишите что-то хорошее! 👍
у вас такие синяки как будто вы плачете xddd
Отличное собеседование, спасибо.
Отдельная благодарность за правильные ответы и разбор нюансов к вопросам, это прямо-таки очень помогает.
Ильнура - молодчинка, удачи ей во всех начинаниях!
Спасибо большое за поддержку :) рады, что было полезно!
Автор имеет навыки работы в photoshop, чувство вкуса, насмотренность, мастерски владеет webflow... но сайт почему то сделала нейросеть)))
Очень понравилось собеседование! Многое, что узнала для себя нового. Спасибо Вам за такую возможность получать новые знания. И спасибо Ильнуре, что решила пройти собеседование, она молодец, всего ей самого хорошо, успехов на работе !!!
Обожаю ваши публичные собеседования☺️ самые полезные 👏
Благодарю за поддержку
Интересно и полезно! Спасибо за мотивацию. Удачи Ильнуре!
И Вам спасибо! И успехов! :)
Спасибо за видео и в особенности за задачу по event loop и ее объяснение. Сразу видны собственные пробелы в знаниях
Огромное спасибо Сергею за наглядные примеры того как проходят настоящие собесы)
Сам сейчас готовлюсь к своим первым собеседованиям и такие видео помогают набираться уверенности и снижать уровень страха, когда получается ответить на вопрос, поставив видео на паузу перед ответом собеседуемого)
Лайк, подписка, колокольчик
P.S. Ильнура умница!
Рад! Успехов Вам!
Ильнура просто умничка! ❤ Спасибо за отличный собес. Полезные вопросы, тонкости и нюансы.
Огромное спасибо за вашу работу и подобные видео! Смотрю в свободное время, отлично помогает закрыть пробелы в теории. Рекомендую всем знакомым. Удачи и успехов в будущем ✌🏼
Класс! Очень вдохновляет! Благодарим за поддержку:)
Очень приятно было послушать достойное выступление Ильнуры!
Классное интервью! Умничка! Много интересных вопросов👍🔥
Рады, что было полезно!
Спасибо, оч крутой собес) Круто, что вопросы не повторяются - это просо офигененно 👍
Благодарю. Я очень старался именно не повторять вопросы.
Было бы странно, если бы вопросы на интервью повторялись, согласны? Это было бы похоже на прием у врача по проверке слуха пациента :)
@@semenpetrov9456 Семен, да Вы юморист! Имелось в виду, что во всех интервью на канале я стараюсь подбирать новые вопросы, не повторяясь из видео в видео. Таким образом, конечно, теряется немного трушность, но зато охватывается большой пласт возможных вопросов для ребят. И на мой взгляд так они будут более готовы к разнообразным вопросам на своих реальных собеседованиях.
Очень полезное видео, спасибо!
Рад, что оказалось полезно
Вы как всегда лучший :)
Молодей Ильнура,карьерного роста и развития!!!
Спасибо за разъяснение вопросов!
Рад, что было полезно
очень интересное и познавательное интервью, вы супер!
Отличный канал, интересные интервью!
И конечно, Ильнура умница!
Рады, что Вам нравится)
Ильнура молодец! интервью очень понравилось
Классное видео получилось! Очень много чего интересного
Очень здорово! Рады были стараться)
Спасибо, очень интересно.
Такая приятная девушка, впервые полностью посмотрел собес🔥🔥
Спасибо. Скобочка после return - интересно. Девочка молодец. Стрессово искать ответ на собесе.
Спасибо за видео
Круто! Ильнура молодец :)
Дякую Сергій! Дякую Ільнура! :-) Супер!!! Відео дуже корисне, пізнавальне. А ще й дуже позитивне!
Радий, що Вам сподобалось! Дякую за підтримку :)
Ильнура умничка!)
Офигенный собес получился, очень интересно было смотреть)
Да, она молодец! Благодарим Вас за поддержку! 🎈
Спасибо 😌
Ок, гуд, хорошо, супер, в принципе )
В первые попал в Ваш канал случайно ) я как начинающий очень интересно и полезно очень много что узнал , Спасибо Вам за Ваш труд
Ильнура Молодец ))))) 1000 лайков Ташкент JS форевер )))
Класс! Очень приятно! Желаем успехов во фронтенде! :)
Благодарю!
класс видосы, что то новое да узнаю для себя
Здорово! Очень мотивируют такие комментарии! Благодарим Вас)
Ильнура,молодец!
Очень хорошо старалась)
Планирую "войтивайти")) думаю, с чего начать свой путь, попадалось видео с этого канала(интервью), было интересно, потом знакомый разработчик посоветовал js, получается, вселенная направляет меня во фронтенд)) Ильнура молодец, а еще я не увидел в комментах, что у нее очаровательная улыбка и она вообще красотка!)
Желаем Вам больших успехов во фронтенде! :)
как успехи
Ильнура молодец! Очень круто! Спасибо! Ребята ставьте лайки!
Благодарим за поддержку ☺️
Сергей огромная просьба . брать задания из жизни с примером . Чтобы можно было ассоциировать с чем то, и запоминать. напрример упражнение с 56-00 минуты можно сделать как ассоциацию лайком (белое сердечко, после лайка красное) но там не рассмотрен массив - скажем товары в категории имеют лайк . то есть 1. скрыть после лайка 2. получить результат в базе , после обновления страницы чтобы сохранился результат в базе
Ну экспириенс в программировании у нее до "Яндекс Практикум", был будь здоров. Так что тут все идеально совпало.
Ильнура крутая) Немного удивился "плаванию" в казалось бы базовых штуках по вёрстке (когда юзать класс, а когда айдишник), но по JS шарит очень хорошо для начинающего специалиста. Я бы наглухо завалился на задаче с двумя массивами xD
P.S. Привет с двадцатой когорты! :)
Приветствую! Дмитрий подскажите пожалуйста, реально ли изучить программирование без учебы на физмате?) Какие курсы можете порекомендовать , или может Книги какие нибудь на старте?)))
@@Dostatok82 я из юриста стал фронтендом. год обучения по 1-2 ч хотя бы, и мозг полностью перестроиться. Правда и ты сам изменишься, станешь более тихим , умным, и пофигистом. Короче не будешь слишком веселый, серьезным так скажем.
Очень продвинуто. Класс конечно так шарить.
Ваші інтерв*ю це експрес-підготовка та повторення всього Фронтенду для реальної співбесіди трейні чи джуніора! Дякую!
Радий, що корисно :) дякую за пiдтримку!
вы с субтитрами смотрите?
Офигеть, она училась в моем потоке))) Ильнура, ты молодец!
Спасибо!)
А ты устроился? Стал бы ты советовать курсы от практикума?
@@bahrambobojonov44 да, устроился. Работаю в сбере 4й месяц. Мне лично курс понравился, из тех одногруппников кто был на курсе, большинство устроились, но не все.
@@bahrambobojonov44 и ещё важный момент, я не стану советовать все курсы, так как прошёл только веб-разработчика. Было желание пойти на реакт, но говорят там тренажёр сырой, много багов и проблем с ним. Но это не отменяет знания того что там дают, так что мне придётся пойти на курс по реакту у них, пока альтернативы не нашёл практикуму
Ну ну
Спасибо, не всё так страшно , как кажется на первый взгляд, мотивирует продолжать обучение и проходить собесы, на которых тебя не съедят , как оказалось )
Так то не страшно)) Но на 3х собесах мне сказали развивать свой Soft skills... Я сам по себе человек замкнутый и с новыми людьми мне очень сложно.HR сказал, что меня держат в подвале и бьют палками)))Вот такое впечатление я произвел. Хотя бы по тех части я был хорош
@@user-js5bw4tf4y у меня всё наоборот, хотелось бы что бы как - то равномерно, общительность большая , технически приходиться сильно упираться )
@@____Olga__ Вы можете вдвоем собраться в одного программиста-трансформера)
@@hustle_juno смешно )
@@hustle_juno ахаха
Ильнура - молодец!
Ильнура - красотка , зачёт .. интересное собеседование, спасибо очень полезно !..
Рад, что было полезно!
Нужно отдать должное смелости девушки -- Ильнура молодец! Показать свои знания, в чем-то ошибиться не так страшно, как попасть под волну хейта и насмешек со стороны "опытных разработчиков" (они же не были джунами, сразу родились сеньерами). Но через пару тройку лет находясь в индустрии, она сама будет иронизировать и смеяться над собой сегодняшней, будучи более профессиональным специалистом чем сейчас.
Полезный контент) подписка, однозначно. у интервьюера голос на мармока очень похож 😁
42:27
Ильнура: я не знаю как это по-русски
Сергей: pending :D
Отличное интервью, классная и умная девушка. Пошёл я свои пробелы подтягивать
Успехов! :)
Может вы сделали скрин теории полной программы обучения? Был бы очень благодарен, если бы вы поделились ей) Просто не у всех есть такие деньги оплатить курс)
Молодец!
ничего не понятно -но очень интересно !подскажите пожалуйста где можно этому
научится?
Писать на собеседованиях - это что то интеесное. Реально волнуешся и куча опечаток допускаешь, особенно на незнакомой клавиатуре.
Да, это так. А еще на некоторых собеседованиях просят кодить на листике - вот это челендж)
Ильнура Молодец!!!!!!!!!
очень милая девочка :)
А еще умная)
@@user-gb5op3sc4i именно так!)
красивая эта ваша Ильнура :) хорошее интервью. Понял, что мне ещё учить и учить... хоть и петов уже наклепал) Или забить на это всё...
Если нравится - нужно продолжать! Какая разница, сколько шагов еще нужно сделать. Не выбирать же из-за этого то, что не нравится) Успехов Вам!!
@@frontendscience прикол в том, что в js меня занесло вообще случайно) меня манит Unity) Игры - это как бы моя сфера ещё со школы :) Сам искал книги, сам учился, сам клепал их на флеше. А тут подвернулась js академия от DataArt. Учились 3 месяца. Не взяли из-за английского. Ещё 5 сам доучиваю остальное + реакт) Не бросать же всё это теперь. Тем более, не факт, что мне понравилось бы в юнити или UE работать на кого-то. Всё-таки, свои проекты - это свои проекты. И ещё сильнее не факт, что там проще. Алгоритмы, физика, оптимизации, шейдеры и прочие штуки... А на js хотя бы вакансий в 100 раз больше)
Спасибо за пожелание успехов :)))
Ппц, железное правило. ID мы используем только для js функционала,а класс только css стили,хотя у видел изврашенцов которые задавали id чтоб использовать его в css )
Ильнура - молодец. Спортсменка, комсомолка, и просто красавица! Успехов!
Серега спасибо. Видос был полезным. Чем больше таких видосов, тем меньше страха на собеседовании у нас.
Самая лучшая мотивация для нас)) Благодарим!
Вопрос про var и setTimeout, вы сказали, что таймауты выставятся в очередь. А разве не колбеки, которые у таймаута внутри? Вроде таймаут отрабатывает после отправления колбека в стек макротасок и уничтожается из стека. Может не прав, сам только учусь)
ну конечно не сами таймауты в очереди стоят а их колбеки. ЗЫ: но важно учитывать что таймаут еще должен отработать (пройти заданное количество времени) прежде чем колбек встанет в очередь
26:02 а мы сейчас как раз избавляемся от критикал css в пользу разбиения стилей на файлы помельче
Ве может быть ) Нету одного "истинно правильного" решения. В каждом конкретном случае надо выбирать наиболее оптимальный подход учитывая все факторы.
А вот так ?)
const intersection = (a, b) => a.filter(elem => b.includes(elem))
Уверенный хай джун. Молодец в любом случае
1:14:24 на самом деле не совсем корректно. Отличие не столько в идемпотентности, сколько вообще в спецификации методов запроса.
Поясню:
В случае выполнения 10 PUT запросов к серверу, первый и последующие запросы действительно должны вернуть одинаковый результат(идемпотентность), но res.status в первый и последующие 9 будут различны, ибо серверу делегируется вариативность ответа - 200(Updated Content) | 201(Created) | 204(No content) и в рамках одного приложения это может различаться(хотя не должно)
У POST запроса же идемпотентость не соблюдается, т.к. в контроллере хендлер данного роута привязан к логике ТОЛЬКО создания, и создаст 10 различных некомпарируемых записей.
**мимобэкендер**
Как насчёт видео о типичных проблемах сайтов, который должен знать джун и мидл, и как их решать?
Не совсем знаю что такое типичные проблемы сайтов. Что вы имеете в виду?
Окей! Супер! Good, хорошо! В целом, у меня все!
:)
Каждый фронтендер мечтает о такой позитивной обратной связи на собеседовании :)
По поводу стрелочки можно использовать и иконочный стиль
Да, все верно.
Знаете, было бы интересно, если бы кто-то из мидлов пошёл на собеседование на джуна. Как быстро раскусят? И предложат ли позицию выше или так и оставят предложение на позиции джуна?
Интервью было интересное, спасибо!
Компания где есть потребность в мидлах - предложит конкурентную ЗП, если кандидат её попросить.
Компания где нужен именно джун - просто не готова будет дать столько денег, сколько попросит мидл. Поэтому это будет выглядеть как хреновое предложение от компании, хотя по факту они никого не обманывают, если они хотят джуна - они будут готовы платить только за джуна. И не важно, что человек по знаниям сильнее, если бюджета на него нет.
Касательно раскусят или нет - конечно раскусят, если человек не будет сециально под джуна косить.
Так что смысла в таком не особо много, только трата времени.
на сегодняшний день стоит ли брать курсы по фронт энду и если да, то где лучше? начальные знания есть по html js css
Прошло первые 10 минут, ору с "good... это хорошо" и "хорошо... это good"😂😂😂
Я рад, что поднял Вам настроение) приятного вечера!
доброе утро)
Доброе :)
Доброе
Ооо Ташкент
Терпения автору на завидовать !!!
для задачи с массивами есть же простой современный синтаксис
const first = [1, 2, 3, 4]
const second = [3, 4, 5, 6]
function i(a, b) {
const arr = a.filter((i) => b.indexOf(i) != -1)
return arr
}
Ну если делать его таки весь современным то надо заменить indexOf(i) != 1 на includes(i)
@@frontendscience точн
Шось багато ютуберів-фронтендерів з України)) Хлопці, ви найкращі!!
Если не указано никаких media или rel у link, браузер ведь блокирует дальнейшую отрисовку страницы
Если будет такой же вопросы и задачи то по моему я готов к интервью.
Блин 🥞, вот без автодополнения как можно писать код? Тем более на собесе, стьюдент и так волнуется. Если ты используешь IDE, то и методы правильно напишешь и подсказка по аргументам будет. 🤷🏻♂️На фронте и так технологий море, чтобы все методы, ключевые слова и тд помнить, я без хелпера и тег для кнопки не напишу. Или переходить на блокнот, чтобы собес пройти?
Крутой собес! Можно оценить знания, которые дают на Яндекс Практикуме)
я думал что тут реклама практикума а оказалось наоборот)
@@Batareika007 почему? Разве это плохие знания для первой работы?
@@goodman4493 человек работает верстальщиком и не знает, как работает position absolute и где использовать id, а где class. Прошел курс по js, но не может создать элемент. Там изучение азов прошло мимо, о чем тут говорить?)
@@goodman4493 , к продолжению слов A. S.
Теории там вроде было, а практики очень мало и один/два проекта за всю учебу, это ничтожно мало. Возможно и хватило на Джуна, но как слышал в других источниках, входной билет это вышка а там уже как себя покажешь. Если оценивать опыт, думаю после Яндекса его не достаточно, нужно добивать самостоятельно, а это может и 80% всех знаний как бы грустно это не звучало...
@@Batareika007 Да это очевидно конечно что тут решала скорее вышка + практикум. Когда за человеком такие регалии, то лучше взять его, нежели другого джуна который может и больше знает, но он самоучка без всего.
Ильнура красавица и молодец!
Не ожидал здесь увидеть Ильнуру, а вообще я узнал о ней из телеграм канала парня который учится в практикуме и ведёт блог об этом)
Ссылкой поделитесь?
@@frontendscience я наверное не очень ясно выразился, и вы могли подумать что я узнал из телеграм о вашем канале, но я имею в виду Ильнуру, ваш канал отобразился у меня в рекомендациях)
@@it400 ясно))) что тоже хорошо! :)
А мне теперь интересно, что за канал, можно ссылочку?)
@@betelgeuse.21 с ноги в айти называется, видел там твои сообщения и почему то запомнил, потом ещё видео отзыв твой попался о Яндекс практикуме)
37:52 енот рад )))))
Пересечение массивов
Я бы так сделал
return a.filter((el) => b.includes(el))
31:51 серьезно, бывают такие баги? Какая жесть, советую тогда линтер прикрутить себе. 3 года работаю, ни разу с таким не сталкивался.
А ведь айдишники еще можно ставить для того, чтоб проскролить к элементу(статье, подглаве на странице) - верно это? Это то, что первым пришло мне в голову
Да, в первую очередь именно для этого они и используются
16:41 мне пришлось встать с кровати в холодную квартиру, достать ноут, войти в винду, открыть вс код, запустить лайв сервер, сверстать страничку с двумя absolute блоками. НЕТ НЕ В ТОМ ЧИСЛЕ)
Не пригадую як звати цю красивую дівчину. але вона молодчинка
Крутой видос) Лично я еще ни разу не был на собеседованиях, только учу JS.
В реальности, если человек будет знать и отвечать так же как Ильнура, его возьмут на позицию джуна?
Просто я себе представлял, что нужно вот прям все-все правильно ответить, что бы взяли.
Я бы пропустил ее на следующий этап собеседования.
И да, необязательно знать все. Я в видео рассказывал, на что я обращаю внимание, когда собеседую.
А в задаче с массивами зачем сложности с циклами и объектами? нельзя было сделать first.filter(e => second.includes(e))?
Затем что сложность варианта с фильтром O(n*m) а вариант с объектом O(n+m)
Спасибо, было забавно наблюдать за хмурым лицом у вас)
Шота я не помню никакого хмурого лица у себя)
Порадовал вопрос с PUT POST :), иногда такой бек попадается, что сидишь и молишься, что бы они хотя бы знали что есть отличные запросы кроме GET и POST, как то приходилось делать проект, где были онли POST запросы
Feel you!
Меня тоже порадовал, с моей точки зрения правильный ответ будет, что зависит от апи сервера, и если например взять ваш проект который был упомянут, PUT запрос сделает ничего
@@llopanov вопрос же был про то, как оно задумано изначально в протоколе, а не как имплементировано на сервере
девке лайк!
Ильнура - молодец! Но для себя я понимаю, что мои знания более расширенные, а использовать на практике (работе) - не хватает уверенности, вот поэтому дальше учусь.))
Успехов!
Поувереннее!)
chickHandler позабавило. А так молодец, достойно отвечала!
С двумя массивами в одну строчку ))
const arr1 = [1,2,3,4]
const arr2 = [3,4,5,6]
function intersection(a, b){
return b.filter((el) => Object.fromEntries(arr1.map((el) => [el, el])).hasOwnProperty(el))
}
console.log(intersection(arr1, arr2));
Я конечно дилетант и сайты только на cms-ках запускаю, но id и классы можно как я знаю и в одном элементе применять одновременно, классов вообще в один тег можно напихать сколько хочешь. А по id проще из js обращаться как я думаю и я бы наверное хедеру вообще не давал id он действительно либо один на странице и стили ему напрямую давать, либо как в примере их несколько но тогда им и класс не поможет отличиться друг от друга если он один для всех будет(хотя изощрённый каскад выборки тут поможет различить). Знатоки подскажите что думаете по этому поводу? А то обидно за id как это он оказывается ненужен, мне он нравится ))))
Сорян, не хотел Вас расстроить)
Не знаю на каких cms вы делаете сайты, хотя к cms то тут вопросов нет, а всё зависит от шаблона вывода, но тэг header очень часто используется, например, при выводе каких-либо однотипных данных(как шапка конкретного блока). Будь-то статья из блога, товар..что угодно. header в данном случае чистая семантика(если не знаете что это, то советую обратить на это внимание). Обращаться напрямую через css к нему, даже если он в данный момент используется только в шапке сайта, это чистое преступление))
ID же, в большинстве своём, нужен только для якорей. Это если по-хорошему), по-плохому - стили переопределить, когда иначе нельзя. Это кстати к слову про cms и их плагины, темы и прочие штуки в которых не каждый хочет разбираться, а легче либо задать id, либо поставить заветное !important
Для js лучше уж использовать специальные классы, что-нибудь типа "js-modal-open" и data атрибуты к нему, и уже по ним цеплять нужный элемент. Одни классы для стилей, другие для js. Никогда не знаешь, что откуда и как. Поэтому лучше уж какие-либо js штуки вынести на отдельные классы.
P.S. бутстрап не переношу
Дайте четкое заключение прошла данный этап или нет. Или дальше не проходит.
Я бы пропустил на следующий этап.
Я так понимаю не пройду собес, придётся снова идти с китайцами работать, поставки запчастей делать для техники.
const first = [1, 2, 3, 4];
const second = [3, 4, 5, 6];
function intersection(a, b) {
return a.filter(item => b.some(i => i === item));
}
console.log(intersection(first, second));
Благодарю за решение. Но такой вариант не сработает если в массивах будут дубликаты.
@@frontendscience может, вторым действием очистить как-то массив от дубликатов?
Пересмотрел, только что видео. Понял, что давал тут вариант попроще - без повторов, так что ваш вариант отлично подойдет. У нас на канале просто есть видео с задачей про пересечение массивов - там был более сложный вариант. И мой предыдущий комментарий относился к ней.
@@frontendscience спасибо))) кстати, вы ещё проводите собеседования??
@@zhl5806 конечно! )
падежи, склонения, отличный английский
Мои 3 способа решения, intersection(a, b):
1) function intersection (a, b) {
return a.filter((el) => b.find((item) => item === el));
}
2) function intersection (a, b) {
const arr = [];
first.forEach((el) => {
second.forEach((item) => {
if (item === el) arr.push(item);
})
})
return arr;
}
3) function intersection (a, b) {
const obj = {};
const arr = [];
first.forEach((el) => {
obj[el] = 1;
})
second.forEach((el) => {
if (obj[el]) arr.push(el)
})
return arr;
}
отличные варианты!
Можно еще такой, наиболее лаконичен, как по мне)
return a.filter(val => b.includes(val))
Немного непонятно про this для стрелочной функции. Почему вывело undefined?
В песочнице код выполняется в строгом режиме ('use strict').
Выполнял я как-то целых 9 часов тестовое задание, бесплатно, разумеется, пришёл на онлайн-собес, а ихний прогер и спрашивает, мол, а шо так долго? А я и говорю, мол, досвидания, всего вам доброго.
Их*
Решил накинуть быстренько в консоли на задачу по удалению кнопки:
const button = document.querySelector('button');
const app = document.querySelector('.app');
const hydra = (e) => {
const data = e.currentTarget.innerHTML;
const button1 = document.createElement('button');
const button2 = document.createElement('button');
button1.innerHTML = +data + 1;
button2.innerHTML = +data + 2;
app.append(button1);
app.append(button2);
e.currentTarget.remove();
const buttons = document.querySelectorAll('button');
buttons.forEach((button) => button.addEventListener('click', hydra));
}
button.addEventListener('click', hydra);
Отличный вариант. Благодарю, что поделились.