Массивы в JS. Основные методы работы с массивами, способы создания массивов, тонкости работы некоторых методов таких как Push, Pop итд
Что такое замыкания в JS. Как работают области видимости. Как работает ключевое слово This
Способы объявления функций, вызова функций, модификации функций (call apply bind)
Что такое ООП и как с ним работать в JS
Жизненный цикл компонента
Как проходит обновление компонента
Что такое JSX и как можно было бы работать без него
Что такое Ref и в каких случаях он применим
Что такое Higher Order Component и где он применим
Как используется this.props.children и каким типом он может быть
Что такое промисы, где применимы
Зачем нужны объекты Map, Set, WeakMap, WeakSet и где их применять
Какие глобальные объекты существуют в браузере и какими свойствами они обладают (не менее 3 эвентов, 3 переменных)
Что будет выведено в консоли
console.log(null || "" || 2 && 3 || 4 && true);
Реализовать функцию-конструктор (или класс), которая будет представлять собой замену нативному объекту String с методами
- toArray
- isEmpty
- set
- get
- split
Создать объект-observable, который будет вызываться при помощи chain.
Пример использования:
const value = new Observable(10);
const calculatedValue = value.plus(5).minus(2).divide(3).concat("руб.").custom(value => {
return value.replace("руб.", "$");
})
console.log(calculatedValue);
Создать компонент Counter, который будет считать количество нажатий на кнопку
Создать компонент, который будет получать данные по адресу https://jsonplaceholder.typicode.com/posts + создать компонент, который будет отображать посты
Использовать можно любой fetcher
Создать компонент Delay, который будет создавать задержку перед отрисовкой для дочерних элементов
Создать компонент Input, который будет работать с функцией Debounce (на выход из компонента данные будут приходить с задержкой в 300мс)
Создать компонент, который будет брать погодные данные (из публичных API) за последний год и строить график
Можно использовать компонент для отрисовки графиков