Проверяет понимание неявного приведения типов в JavaScript и правил оператора сложения.
Оператор + в JavaScript ведет себя по-разному в зависимости от типов операндов. Если хотя бы один операнд — строка, то второй преобразуется в строку, и выполняется конкатенация. Если оба операнда — числа, происходит арифметическое сложение. Объекты сначала преобразуются в примитивы через методы valueOf или toString.
console.log(1 + '2'); // '12' (число 1 преобразуется в строку)
console.log('3' + 4 + 5); // '345' (слева направо: '3'+4='34', затем '34'+5='345')
console.log(1 + 2 + '3'); // '33' (сначала 1+2=3, затем 3+'3'='33')
console.log(true + false); // 1 (true=1, false=0)
console.log([] + {}); // '[object Object]' (пустой массив -> '', объект -> '[object Object]')Понимание приведения типов помогает избежать неожиданных ошибок в коде, особенно при работе с пользовательским вводом или API. Рекомендуется использовать явное преобразование (String(), Number()) для повышения читаемости и предсказуемости.
Вывод: Знание правил неявного приведения типов необходимо для отладки и написания надежного кода на JavaScript, особенно в условиях динамической типизации.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию