Frontend
На чём вы писали стили на последнем проекте (SCSS, CSS Modules и т.п.)?
Определите порядок вывода в консоль для кода с использованием setTimeout и Promise (задача на Event Loop).
Почему вы выбрали именно нашу компанию? Что для вас важно при выборе работодателя?
Представьте самый базовый, пустой новый Vue проект - какая у него архитектура? Какие папки есть и для чего они нужны?
Расскажи о вариантах оптимизации и мемоизации на стыке родительского и дочернего компонентов
В чём разница между interface и type в TypeScript?
Какие данные лучше складывать в Store, а какие хранить в сервисах?
Как типизировать компоненты с HTML-атрибутами и рефами?
Расскажи про Event Loop: микротаски и макротаски, очерёдность выполнения.
Какая архитектура была до FSD? Почему выбрали именно FSD, а не другие подходы?
Чем отличается обычный массив от Set? Что можно сделать такого, где Set будет лучше массива?
Расскажи про CSS box-sizing: content-box и border-box — для чего используются, в каких случаях применяешь?
Какими git-алиасами пользуешься и для чего?
Работа с формами: React Hook Form, валидация через Yup/Zod
Видишь, я нажимаю на item 2, скрываю, и у меня item 1 тоже закрывается. Так быть не должно. Можешь объяснить, почему так происходит?
Is hybrid work in [город] okay for you?
const submit = useCallback((el) => () => { log(el); }, []); arr.map(el => <button onClick={submit(el)} />) arr.map(el => <SomeComp key={} onClick={() => submit(el)} />) const param = useMemo(() => ({c: a + b}), [a,b]) return <Child value={param} /> Child = React.memo(() => {})
Не было ли проблемы с тем, что в React-проектах в разных компаниях складывается разный «зоопарк» библиотек вокруг самого React?
Есть два компонента: App и Child. Child находится внутри App и обёрнут в memo. В App есть объект user, который передаётся в Child пропсом, и кнопка, которая меняет count. Что будет происходить при нажатии на кнопку? Как сделать, чтобы Child не ререндерился?
Нужно написать функцию sum, которая при вызове с аргументом накапливает число, а при вызове без аргумента возвращает накопленное число. Например: sum(2)(1)(2)() должна вернуть 5.