Why this object does not have the expected value

A familiar situation

The object is there. The properties too. Yet the displayed value does not match what was expected.

This situation is common and rarely caused by a simple typo.

References and mutations

In many cases, the object was modified elsewhere after the moment it was thought to be observed.

As explained in the article about reading objects, the console often shows a live state.

The right moment to observe

  • before a mutation
  • after a specific event
  • at the right stack level

Observing too early or too late distorts understanding.

Changing perspective

When a value is surprising, the problem is not always the object itself, but the moment it is observed.