Неожиданный вывод при добавлении пустого объекта {} в пустой массив [] в JavaScript [Duplicate]Javascript

Форум по Javascript
Ответить
Anonymous
 Неожиданный вывод при добавлении пустого объекта {} в пустой массив [] в JavaScript [Duplicate]

Сообщение Anonymous »

Я работаю над проектом JavaScript, где мне нужно объединить пустой объект {} и пустой массив [] . Тем не менее, я получаю неожиданный результат.
Вот упрощенная версия моего кода: < /p>

Код: Выделить всё

console.log({} + []);
Я ожидал, что это либо бросит ошибку, либо вернет что -то значимое, но вместо этого он печатает 0.
Я пытался:
  • обертка {} в скобках: < /p>

    Код: Выделить всё

      console.log(({} + [])); // Output: "[object Object]"
    < /code>
    Это дает другой результат, который меня смущает. < /p>
    < /li>
      Проверка поведения + с Различные типы: < /p>
      console.log([] + {}); // "[object Object]"
    
    это ведет себя по -разному по сравнению с {} + [] .
Почему {} + [] return 0 вместо [Object Object] like [] + {} ?
это ошибка, или есть внутреннее правило JavaScript, которое вызывает такое поведение?>

Подробнее здесь: https://stackoverflow.com/questions/794 ... in-javascr
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»