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

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

@viktorreh

Чат для обсуждения наших задач: https://news.1rj.ru/str/+YShywCEkhylkMDVi
Download Telegram
JavaScript. Каким будет результат?
Anonymous Quiz
20%
"345"
59%
"75"
16%
12
4%
"12"
2%
Посмотреть ответы
😁10
Javanoscript вопрос: Что вернет 'foo' + + 'bar' ?
Anonymous Quiz
27%
'foobar'
12%
'foo bar'
31%
'fooNaN'
7%
'NaN'
16%
NaN
8%
Посмотреть ответы
🔥4👍2
Вопрос на JavaScript собеседовании.

Что такое замыкание в JavaScript?

Ответ:
Замыкание — это функция, которая имеет доступ к переменным своей внешней функции.

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

function outerFunction(x) {
return function innerFunction(y) {
return x + y;
};
}

const add5 = outerFunction(5);
console.log(add5(3)); // 8


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

Для чего используется useContext и как он работает?

Ответ:

В типичном React-приложении данные передаются сверху вниз (от родительского компонента к дочернему) с помощью реквизитов (пропсов). Однако такой способ может оказаться слишком громоздким для некоторых типов реквизитов, которые нужно передавать многим компонентам – из-за языка или темы пользовательского интерфейса, например. Контекст предоставляет возможность обмена данными между компонентами без необходимости явной передачи реквизита через каждый уровень дерева.

Компонент, вызывающий useContext, всегда будет перерисовываться при изменении значения контекста. Если перерисовка компонента требует больших затрат, можно оптимизировать ее с помощью мемоизации (картинка сверху).

Подробности об использовании useContext в
документации.

#react #собеседование
👍81
Вопрос на 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%
Посмотреть ответы