
JavaScript — универсальный и динамичный язык. На технических собеседованиях часто встречаются сложные и каверзные вопросы по JavaScript, которые проверяют ваше понимание языковых нюансов, области действия, замыканий и многого другого. Давайте рассмотрим самые каверзные вопросы по кодированию JavaScript:
1. Загадочная правдивость пустых массивов
Вопрос: Что выведет следующий код?
if ([] == false) {
console.log("Hello!");
} else {
console.log("Hi!");
}
Ответ: Вывод будет «Привет!».
2. Загадочное замыкание и проблема цикла
Вопрос: Что выведет следующий код?
for (var i = 1; i <= 5; i++) {
setTimeout(function() {
console.log(i);
}, 1000);
}
Ответ: на выходе будет пять экземпляров числа 6.
3. Неуловимое сравнение NaN
Вопрос: Что выведет следующий код?
console.log(NaN === NaN);
Ответ: Результат будет false.
4. Сбивающее с толку ключевое слово «это»
Вопрос: Что выведет следующий код?
const person = {
name: "John",
greet: function() {
console.log(`Hello, my name is ${this.name}.`);
}
};
const greetFunc = person.greet;
greetFunc();
Ответ: вывод будет «Привет, мое имя не определено».
Решение сложных и каверзных вопросов по JavaScript требует глубокого понимания нюансов и поведения языка. Постоянно выполняя упражнения по программированию и изучая тонкости языка, вы улучшите свои навыки и сделаете вас более уверенным разработчиком JavaScript.
Сообщите мне, если у вас возникнут сомнения или сомнения.
Если вам понравилась эта статья, подпишитесь на меня в Medium и других социальных сетях, чтобы узнать больше о программировании, производительности и технологиях.