В чем разница между логическими операторами && и ||

«В чем разница между логическими операторами && и ||» — вопрос из категории JavaScript, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

&& (логическое И) возвращает первый ложный операнд или последний, если все истинные. || (логическое ИЛИ) возвращает первый истинный операнд или последний, если все ложные.

Пример:

console.log(0 && 2); // 0 (первый ложный)
console.log(1 && 2); // 2 (оба истинные, возвращает последний)
console.log(0 || 2); // 2 (первый истинный)
console.log('' || null || 'default'); // 'default' (все ложные, возвращает последний)

Оба оператора используют короткое замыкание: && не проверяет дальше после первого ложного, || — после первого истинного.