View On GitHub
Front-end-Job-Interview-Questions
Ответы на вопросы на должность Frontend разработчика.
Project maintained by
FedorovAlexander
Hosted on GitHub Pages — Theme by
mattgraham
Вопросы по Javascript
Объясните делегирование событий.
Объясните, как this работает в JavaScript.
Расскажите, как работает прототипное наследование.
Что вы думаете о AMD против CommonJS?
Объясните, почему это не является IIFE: function foo(){ }();. Что необходимо изменить, чтобы это стало IIFE?
В чём различие между переменными, значение которых: null, undefined и не объявлено? Как бы вы проверили их на каждое из этих значений?
Что такое замыкание и как/для чего его используют?
Можете ли вы описать основное различие между циклом forEach и циклом .map()? И в каких случаях каждый из них используется?
В каких случаях обычно используются анонимные функции?
В чем разница между host-объектами и нативными объектами?
В чем разница между: function Person(){}, var person = Person(), и var person = new Person()?
В чем разница между .call и .apply?
Что делает и для чего нужна функция Function.prototype.bind?
В чем разница между feature detection (определение возможностей браузера), feature inference (предположение возможностей) и анализом строки user-agent?
Расскажите об Ajax как можно более подробно.
Какие преимущества и недостатки в использовании Ajax?
Объясните, как работает JSONP (и почему это не совсем AJAX).
Вы когда-нибудь использовали шаблонизацию на JavaScript? Если да, то какие библиотеки вы использовали?
Расскажите, что такое поднятие (hoisting).
Объясните, что такое всплытие событий (event bubbling).
В чём разница между «атрибутом» (attribute) и «свойством« (property)?
Почему не следует расширять нативные JavaScript-объекты?
В чём разница между событием document load и событием document DOMContentLoaded?
В чём разница между == и ===?
Объясните same-origin policy в контексте JavaScript.
Сделайте так, чтобы этот код работал: duplicate([1,2,3,4,5]); // [1,2,3,4,5,1,2,3,4,5]
Почему тернарный оператор так называется?
Что делает строчка “use strict”;? Какие достоинства и недостатки от ее использования?
Напишите цикл, который перебирает числа до 100, возвращая “fizz” на числа кратные 3, “buzz” на числа кратные 5 и “fizzbuzz” на числа кратные 3 и 5
Почему считается хорошим тоном оставить глобальную область видимости (global scope) в нетронутом состоянии?
Для чего используют событие load? Есть ли у этого события недостатки? Знаете ли вы какие-либо альтернативы, и в каких случаях бы стали их использовать?
Расскажите, что такое одностраничное приложение, и как сделать его SEO-оптимизированным.
Насколько вы опытны в работе с промисами (promises) и/или их полифилами?
Какие преимущества и недостатки при использовании промисов вместо колбэков (callbacks)?
Каковы преимущества и недостатки написания JavaScript-кода на языке, который компилируется в JavaScript?
Какие инструменты и методы вы используете при отладке кода?
Какие языковые конструкции вы используете для итерации по свойствам объекта и элементам массива?
Объясните разницу между синхронными и асинхронными функциями.
Что такое цикл событий (event loop)? В чём разница между стеком вызовов (call stack) и очередью событий (task queue)?
Объясните разницу при использовании foo в function foo() {} и var foo = function() {}
В чём различие между переменными, созданными при помощи let, var и const?
В чём разница между классом в ES6 и функцией-конструктором в ES5?
Можете ли вы привести пример использования стрелочных функции =>? Чем они отличаются от других функций?
Дайте определение функции высшего порядка.
Можете ли вы привести пример деструктуризации объекта или массива?
Шаблонные строки в ES6 намного упрощают создание строк, можете ли вы привести пример их использования?
Можете ли вы привести пример каррированной функции (curry function) и в чём их преимущество?
В чём преимущества использования spread оператора и чем он отличается от rest оператора?
Каким образом можно обмениваться кодом между файлами?
Для чего используются статические члены класса?
В чем разница между async и defer?
В чём разница между изменяемым (mutable) и неизменяемым (immutable) объектом?