Задать вопрос
@1233211

Как переменная одновременно может быть и true, и false?

Что должно быть в value, чтобы вызвался console.log?

if (value == false && value == true) {
  console.log('Wow!');
}
  • Вопрос задан
  • 316 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
Можно сделать объект, у которого будет определено преобразование в примитив, изменяющее состояние объекта, от которого его примитивное представление зависит:

const obj = {
  val: 1,
  valueOf() {
    return this.val ^= 1;
  },
};

// или

const obj = {
  val: '1',
  toString() {
    return this.val = '1'.slice(this.val.length);
  },
};

// или

const obj = {
  val: true,
  [Symbol.toPrimitive]() {
    return this.val = !this.val;
  },
};

console.log(obj == false, obj == true); // true true
console.log(...Array.from({ length: 5 }, () => +obj)); // 0 1 0 1 0
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
05 янв. 2025, в 07:48
2000 руб./за проект
05 янв. 2025, в 06:24
15000 руб./за проект
05 янв. 2025, в 06:22
15000 руб./за проект