Задачи по JS/CSS/HML – Telegram
Задачи по JS/CSS/HML
1.75K subscribers
50 photos
10 links
Задачи по JS/CSS/HML
Опросы и тесты.

Задачи с собеседований и их решения.

@viktorreh

Чат для обсуждения наших задач: https://news.1rj.ru/str/+YShywCEkhylkMDVi
Download Telegram
Вопрос на JavaScript собеседовании.

Как this работает в JavaScript?

Ответ:

this важное ключевое слово в JavaScript. Его значение определяется тем, как вызывается функция. Его можно задать явно с помощью call(), apply() или bind().

По умолчанию его значение внутри функции устанавливается в глобальный объект (в браузере это объект window), за исключением того, когда функция вызывается как метод объекта.
В этом случае this указывает на объект, методом которого он является.


#js #собеседование
👍11
Вопрос на React собеседовании.

Что такое React.memo()?

Ответ:

React.memo() – это компонент высшего порядка, который используется для оптимизации производительности веб-приложений. Если компонент, который вы хотите оптимизировать, всегда отображает один и тот же результат с неизменными реквизитами (props), вы можете обернуть его вызов в React.memo, чтобы запомнить его результат. Таким образом, React может использовать последний отрендеренный результат этого компонента вместо того, чтобы снова его рендерить, если входные данные не изменились. Это помогает оптимизировать производительность, так как повторный рендеринг может быть затратным по ресурсам (пример на картинке сверху).

Важно отметить, что React.memo влияет только на изменение входных данных (реквизитов): если функциональный компонент, обернутый в React.memo, использует useState, useReducer или useContext для изменения своего состояния или контекста, он все равно будет перерисован при изменении этих состояний или контекстов.

Подробности в
документации.

#react #собеседование
3👍1
JavaScript. Каким будет результат?
Anonymous Quiz
8%
1 2
13%
1 2 3
67%
1 2 4
5%
1 3 4
6%
Посмотреть ответы
Вопрос на JavaScript собеседовании.

Что такое поднятие (hoisting) в JavaScript?

Ответ:

В JavaScript поднятие (hoisting) — это поведение, при котором переменные и объявления функций в памяти автоматически перемещаются в верхнюю часть своей области.

Что это значит? Это означает, что эти переменные могут быть использованы до того, как они будут объявлены, и объявления функций также могут быть вызваны до их определения.


#js #собеседование
👍12
Вопрос на React собеседовании.

Что такое фрагмент React?

Ответ:

Возврат нескольких элементов из компонента – обычная практика в React. Однако это может привести к созданию большого количества элементов в дереве виртуального DOM, отчего пострадает производительность приложения.

Фрагменты React позволяют группировать несколько элементов внутри функции-компонента, избегая таким образом создания большого количества узлов в виртуальном DOM. Это улучшает производительность приложения и читаемость кода (пример на картинке сверху).

Подробнее о фрагментах -
здесь.

#react #собеседование
3
Вопрос на JavaScript собеседовании.

В чем разница между var, let и const?

Ответ:

🔵var: Переменные, объявленные с помощью var, имеют функциональную область действия, что означает, что к ним можно получить доступ только в рамках функции, в которой они были объявлены. Внешняя переменная затеняется, когда переменная с тем же именем объявляется во вложенной функции.
🔵let: Пусть переменные имеют блочную область действия, что означает, что они доступны только в том блоке, в котором они объявлены. Объявление переменной с тем же именем во вложенном блоке приведет к затенению внешней переменной.
🔵const: переменные, объявленные с помощью const, также как let, имеют область действия блока, но их нельзя переназначить.

Вот пример:
function example() {
var x = 1;
let y = 2;
const z = 3;

if (true) {
var x = 4;
let y = 5;
const z = 6;
}

console.log(x); // 4
console.log(y); // 2
console.log(z); // 3
}

example();


#js #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
👎7🔥3👍1
Вопрос на React собеседовании.

Как отследить изменения поля объекта в функциональном компоненте?

Ответ:

Для этого необходимо использовать хук useEffect и передать поле объекта в виде массива зависимостей: пример на картинке сверху.


#react #собеседование
JavaScript. Каким будет результат?
Anonymous Quiz
5%
8
70%
10
11%
SyntaxError
11%
ReferenceError
3%
Посмотреть ответы
Вопрос на JavaScript собеседовании.

Какова разница между == и ===?

Ответ:

Оператор равенства == выполняет принудительное приведение типа, что означает, что он попытается преобразовать операнды в один и тот же тип перед их сравнением. С другой стороны, оператор строгого равенства ===, не выполняет приведение типа. Он возвращает значение true только в том случае, если оба операнда имеют одинаковый тип и значение.

Например:
console.log(1 == '1'); // true
console.log(1 === '1'); // false


#js #собеседование
👍18
Вопрос на React собеседовании.

Как получить доступ к элементу DOM?

Ответ:

Чтобы получить доступ к DOM-элементу в React, нужно создать ссылку на этот элемент. Это можно сделать с помощью функции React.createRef() или хука useRef(). После создания ссылки ее нужно присоединить к компоненту React, для которого нужно получить доступ к DOM, с помощью атрибута ref. Затем, чтобы получить доступ к самому элементу DOM, можно обратиться к созданной ссылке через ref.current: пример на картинке сверху.


#react #собеседование
👍9👌1
Вопрос на JavaScript собеседовании.

В чем разница между null и undefined?

Ответ:

undefined указывает, что переменная была объявлена, но ей не было присвоено значение.
Значение null представляет собой преднамеренное отсутствие какого-либо значения объекта.
Другими словами, null — это явно заданное значение, указывающее на отсутствие значения.


#js #собеседование
👍18👎1
Вопрос на React собеседовании.

Как обрабатывать асинхронные действия в Redux Thunk?

Ответ:

Для обработки асинхронных действий в Redux Thunk необходимо выполнить следующие шаги:

🔵Импортировать Redux Thunk как middleware.
🔵Учесть, что создатели действия должны возвращать функцию вместо простого объекта. Эта функция должна принимать параметр dispatch и вызывать его с новым объектом действия.
🔵Внутри этой функции можно использовать асинхронные операции, такие как fetch или API вызовы.
🔵Когда асинхронная операция завершится, необходимо вызвать метод dispatch с новым объектом действия, который содержит результат операции.
Пример на картинке сверху.

Подробности в
документации.

#react #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
👎5👏1😁1