Важные темы для собеседования по разработке фронтенда


Темы, которые необходимо освоить

Есть несколько тем по JavaScript, которые необходимо освоить, если вы хотите пройти любое собеседование по фронтенду.

  1. Scoping
  2. Поднятие
  3. Закрытия
  4. Обратные вызовы
  5. Обещания
  6. Асинхронность и ожидание

Что такое Scoping?

Scoping в JavaScript определяет доступность переменных, объектов и функций.
В JavaScript существует три типа диапазонов
a. Область блока
b. Область функций
c. Глобальная область видимости

Переменные, объявленные с помощью let и const, имеют область видимости блока, но переменные, объявленные с помощью var, не имеют области видимости блока.

Область видимости функции — это когда вы определяете переменную внутри функции, к которой вы не можете получить доступ.

Что такое Hoisting?

Hoisting в javascript — это поведение, при котором функция или переменная может быть использована до объявления.

Что касается переменных, то var является hoisted, а let и const не допускают hoisting.
Следующий код выдаст ошибку.

Что такое закрытие?

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

const hello = () => {
    let greet = "hello & welcome";
    const welcome = () => console.log(greet);
    return welcome;
}

const fun = hello();
fun();

// hello & welcome
Вход в полноэкранный режим Выход из полноэкранного режима

Что такое обратный вызов?

Обратный вызов — это функция, которая передается в качестве параметра в другую функцию, которая будет выполнена после завершения задачи.

setTimeout(() => {
    console.log("hello, inside boy");
}, 2000);

console.log("hello outside boy");

// hello outside boy
// hello, inside boy
Вход в полноэкранный режим Выход из полноэкранного режима

Что такое обещания?

Обещание в JS похоже на обещание в реальной жизни — мы сделаем это или не сделаем.

JS обещание имеет три состояния:

  • Ожидание
  • Решено
  • Отклонено

Что такое async и await

Остановка и ожидание, пока что-то не будет решено. Мы используем ключевое слово async с функцией, чтобы показать, что функция является асинхронной.

Функция async возвращает обещание.

const fetchAPI = async () => {
    const res = await fetch('https://api.quotable.io/random');
    console.log(res);
}

fetchAPI();
Вход в полноэкранный режим Выход из полноэкранного режима

Оцените статью
devanswers.ru
Добавить комментарий