Специализация
Python Backend Developer
Java Backend Developer
Node.js Backend Developer
Golang Backend Developer
React Frontend Developer
Выберите навыки
React
JavaScript
Git
Redux
Webpack
Сложность
1-3
4-6
7-8
9-10
Рейтинг вопросов
1
2
3
4
5
Подпишись на React Developer в телеграм
Расскажите про this и контекст
this в JavaScript — это ключевое слово, которое ссылается на текущий контекст выполнения. Контекст зависит от того, где и как используется this:
В методе объекта this указывает на этот объект.
В функции this по умолчанию указывает на глобальный объект (в строгом режиме — undefined).
В стрелочных функциях this наследуется из внешнего контекста.
Пример:
const obj = {
name: "Иван",
greet() {
console.log(`Привет, ${this.name}!`);
},
};
obj.greet(); // Привет, Иван!Зачем для тега <script> добавляют атрибуты async и defer?
Атрибуты async и defer у тега <script> используются для управления тем, как и когда браузер загружает и выполняет JavaScript. async загружает скрипт асинхронно и выполняет его сразу после загрузки, не дожидаясь завершения загрузки всей страницы. defer также загружает скрипт асинхронно, но откладывает его выполнение до полной загрузки HTML-документа, что предотвращает блокировку рендеринга страницы.
Как работает перерендеринг элементов, когда используются атрибуты data- и как они могут влиять на производительность?
Атрибуты data- сами по себе не вызывают перерендеринг, но если они изменяются и связаны с состоянием компонента, это может привести к обновлению компонента в React. Чрезмерное использование или частое изменение data- атрибутов может негативно сказаться на производительности, так как может приводить к ненужным перерисовкам.
Что такое стрелочные функции и чем они отличаются от обычных функций?
Стрелочные функции — это сокращенная запись функций, которая не имеет своего контекста this. Они чаще всего используются для упрощения синтаксиса и не поддерживают некоторые особенности обычных функций, например, arguments и this. Эти функции удобны для написания короткого кода, но их нельзя использовать в ситуациях, где важен контекст.
Для чего и как работает this в методах объекта?
В методах объекта this указывает на сам объект, к которому принадлежит метод. Это позволяет методам объекта работать с его свойствами и другими методами. Значение this может изменяться в зависимости от того, как вызван метод, поэтому важно понимать контекст вызова.
Есть ли у стрелочной функции методы call, apply и bind?
Расскажите про this и контекст?
Методы call, apply, bind — для чего они нужны?
Особенности стрелочных функций (this, arguments) и как изменить контекст?
Как работает this для прототипов объекта?
Рейтинг:
3
Сложность:
5
Стрелочные функции могут использовать методы call, apply и bind, но эти методы не изменяют контекст this внутри стрелочной функции. В отличие от обычных функций, стрелочные функции наследуют значение this из своей внешней области видимости (лексический контекст), и методы call, apply и bind не могут его изменить.
Рейтинг:
4
Сложность:
7
В JavaScript this — это ссылка на текущий контекст выполнения, который зависит от того, как вызвана функция. В методах объектов this ссылается на сам объект, а в обычных функциях — на глобальный объект или undefined в строгом режиме. Значение this может быть явно изменено с помощью методов call, apply и bind.
Рейтинг:
4
Сложность:
6
Методы call и apply позволяют вызвать функцию с заданным значением this, но call передаёт аргументы через запятую, а apply — в виде массива. Метод bind возвращает новую функцию с фиксированным значением this, которая может быть вызвана позже. Эти методы полезны для контроля контекста выполнения функции, особенно при работе с методами объектов.
Рейтинг:
4
Сложность:
7
Стрелочные функции не создают собственного контекста this и используют значение this из внешней функции. Они также не имеют объекта arguments, что делает их менее гибкими в некоторых ситуациях. Контекст стрелочной функции изменить нельзя, так как он жёстко привязан к внешней области видимости.
Рейтинг:
4
Сложность:
8
Когда метод вызывается на объекте, который наследует этот метод через прототип, this указывает на объект, на котором был вызван метод, а не на сам прототип. То есть, независимо от того, где определен метод — на объекте или на его прототипе — this всегда ссылается на объект, который инициировал вызов.
Рейтинг:
4
Сложность:
6
Рейтинг:
4
Сложность:
6
Рейтинг:
2
Сложность:
4
Рейтинг:
4
Сложность:
4
Рейтинг:
4
Сложность:
6