Результаты: true, false, true, false, true. Это приведение к логическому типу; непустые строки и объекты являются truthy независимо от их содержимого.
Как работает преобразование значений в boolean
Результаты: true, false, true, false, true. Это приведение к логическому типу; непустые строки и объекты являются truthy независимо от их содержимого.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Определите Boolean('false'), Boolean(0), Boolean([]), Boolean(null) и !!'0'. Как называется такая операция?
Ответ
Результаты: true, false, true, false, true. Это приведение к логическому типу; непустые строки и объекты являются truthy независимо от их содержимого.
Строка 'false' не равна логическому false по смыслу преобразования. Поэтому значение из формы или переменной окружения нельзя разобрать через Boolean, если контракт использует текст 'true'/'false'. Сравните его с разрешённой строкой и отклоните неизвестные варианты. Двойное отрицание выполняет то же логическое приведение.