Was ist der Unterschied zwischen console.dir und console.log?
In Chrome dieconsole
object definiert zwei Methoden, die anscheinend dasselbe tun:
console.log(...)
console.dir(...)
Ich habe das irgendwo online gelesendir
Erstellt eine Kopie des Objekts, bevor es protokolliert wirdlog
Übergibt lediglich den Verweis an die Konsole, was bedeutet, dass er sich möglicherweise geändert hat, wenn Sie das protokollierte Objekt untersuchen. Einige vorläufige Tests legen jedoch nahe, dass es keinen Unterschied gibt und beide möglicherweise Objekte in einem anderen Status als zum Zeitpunkt der Protokollierung anzeigen.
Versuchen Sie dies in der Chrome-Konsole (Strg+Verschiebung+J) um zu sehen, was ich meine:
> o = { foo: 1 }
> console.log(o)
> o.foo = 2
Nun erweitern Sie die[Object]
unter der Log-Anweisung und beachten Sie, dass es zeigtfoo
mit einem Wert von 2. Dasselbe gilt, wenn Sie den Versuch mit wiederholendir
anstattlog
.
Meine Frage ist, warum diese beiden scheinbar identischen Funktionen existierenconsole
?