Ну вы еще составьте тесты для {} + [] + [{}]. А потом топите, как это можно не знать !?
а вообще на самом деле интересное поведение у штуки справа. Сначала она, по видимому, в сочетании со стрингом преобразуется в объект {}, а затем объект сам преобразуется в стринг и получается забавный результат.
Надо будет покопать почему массив с объектом внутри приводится к просто объекту, в то время как пустой массив приводится к пустой строке