В этой статье я расскажу о наиболее часто задаваемых темах интервью по JavaScript. Этот набор тем поможет вам изучить важные вещи. А теперь начнем со статьи. Ссылка на вторую часть.

Имейте в виду, что вы должны знать практическую реализацию и примеры тем, упомянутых ниже

1. Какие закрытия в JavaScript?
Это самый известный вопрос на собеседовании. Таким образом, замыкания в JavaScript - это функция, при которой внутренняя функция может обращаться к переменным внешней функции (включающей функции), даже если внешняя функция вернула / выполнила.

Приятно слышать:

  • Замыкание имеет три области действия:
    a) Локальная область (внутренняя / собственная область действия)
    b) Внешняя область (охватывающая область функции)
    c) Глобальная область
  • Утечки памяти в закрытии

Подробнее о закрытии здесь

2. Что такое обещания в JavaScript?
Обещания - это способ обработки асинхронных операций в Javascript. Им легко управлять, когда существует несколько асинхронных операций, в которых обратные вызовы создают ад обратных вызовов.
Обещание - это объект, который когда-нибудь в будущем возвращает одно значение, независимо от того, разрешено оно или отклонено для причина.

Синтаксис: var обещание = новое обещание (разрешить, отклонить)

Обещание: ожидает выполнения, выполнено или отклонено.

Методы обещания:

  • Promise.all (): он примет несколько обещаний и запустит их параллельно, вернет результат, если все обещания были разрешены.
  • Promise.race (): он вернет результат, как только будет выполнено одно из обещаний.

Методы экземпляра обещания:

  • Promise.prototype.then (): добавляет к обещанию обработчик выполнения и отклонения. Как только обещание разрешено или отклонено, мы можем выполнить операцию, которая должна быть выполнена после отклонения или выполнения обещания.
  • Promise.prototype.catch (): добавляет обработчик отклонения к обещанию. Как только обещание отклонено, мы можем выполнять дальнейшие операции внутри метода catch.

В большинстве случаев интервьюер задаст прямо / косвенно вопрос, связанный с методом Promise.all ().

Подробнее:

3.Async / Await: Async / Await - это синтаксический сахар по сравнению с обещаниями. Он предоставляет более лаконичный / чистый код для одновременной обработки нескольких обещаний.

Если мы поместим ключевое слово async перед объявлением функции, оно вернет обещание, и мы сможем использовать await в функцию async, которая блокирует выполнение оператора, написанного после ключевого слова await, до тех пор, пока обещание не будет разрешено.

асинхронная функция myFunction () {
var result = await Promise ();
console.log (1);
console.log (результат)
}
myFunction ( );

Выполнение вышеуказанной функции:
1. вызывается myFunction
2. Выполняется строка var result = await Promise (). JavaScript обнаружил, что он ожидает результатов, поэтому он останавливает дальнейшее выполнение функции
3. JavaScript выполняет другую функцию до тех пор, пока await Promise () не будет разрешен / отклонен < br /> 4. Как только обещание разрешено, оно переходит к myFunction и начинает выполнение дальнейших операторов этой функции.

Обратите внимание: Async / await является асинхронным. Он всегда будет возвращать обещание.

Подробнее:

4. call, bind и apply: ключевое слово this в JavaScript ведет себя иначе, чем в других объектно-ориентированных языках программирования. методы call, bind и apply - это способ поиграть с контекстом в JavaScript.

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

call (): он вызовет функцию напрямую с первым аргументом, будет значение, на которое указывает this, и будут предоставлены все аргументы. индивидуально.

apply (): это то же самое, что и метод вызова, вместо того, чтобы предоставлять аргументы по отдельности, аргументы будут представлены в виде списка.

Большинство интервьюеров попросят вас написать полифилл для метода привязки.

5. Что такое каррирование в JavaScript?

Каррированная функция - это функция, которая принимает несколько аргументов по одному.

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

Заключение

Вышеупомянутый набор тем является наиболее важным для понимания JavaScript, потому что вы будете использовать их в своей повседневной разработке. Эти темы будут задаваться почти на всех собеседованиях по JavaScript, будь то младшие или старшие должности. Это первый набор тем, в следующей статье я расскажу о следующем наборе тем для интервью.

Это моя первая статья, если эта статья поможет вам или у вас есть отзывы / предложения, вы можете напрямую связаться со мной в Linkedin.