Я узнал, что в javascript объекты передаются по ссылке, и в результате проверка равенства двух объектов не так проста, как objA === objB
, даже если эти объекты имеют одинаковые свойства. Почему тогда, в контексте браузера, следующий код равен true?
window.self === window.top
И window.self, и window.top возвращают объект окна. Я подозреваю, что ответ имеет какое-то отношение к объекту окна, имеющему определенный тип типа Window
, но я надеюсь, что кто-то конкретно расскажет, как в данном случае отличается равенство объектов по сравнению с обычным сравнением объектов.