2017-02-03 1 views

Répondre

4

L'objet que vous voyez dans la console un instantané de l'objet à un moment donné - l'heure à laquelle vous l'avez connecté. Lorsque vous développez l'objet, il évalue à nouveau les propriétés.

Dans l'exemple ci-dessous, j'ai créé un objet avec deux propriétés de tableau. Je l'ai connecté à la console, puis j'ai ajouté une troisième propriété, c.

Snapshot

Seules les deux premières propriétés témoignent encore, même si je viens d'ajouter une troisième propriété. Après avoir étendu l'objet dans la console, je peux voir le troisième. C'est le dernier état de l'objet.

Evaluated

Si vous passez la souris sur la petite icône bleue i, il explique ce qu'il a fait:

valeur ci-dessous a été évalué en ce moment.

0

@Gideon Pyzer a raison. les propriétés ont été calculées et ajoutées après l'expansion de l'objet dans la console.

Ajoutez juste un code de ligne au-dessus de votre code de débogage et rouvrez l'outil de développement de chrome, vous verrez les différences.

obj = Object.freeze(obj); //add this line before your console.log 
console.log(obj); 

Avant:

enter image description here

Après:

enter image description here

une question semblable à moi: Why can't I access the attr of the javascript object shown in chrome dev tool