Chrome'da consolenesne aynı şeyi yapıyor gibi görünen iki yöntemi tanımlar:
console.log(...)
console.dir(...)
Çevrimiçi dirbir yerde , günlüğe kaydetmeden önce nesnenin bir kopyasını alan bir yerde okurken log, referansı konsola iletir, yani oturum açtığınız nesneyi incelediğiniz zaman değişmiş olabilir. Bununla birlikte, bazı ön testler, fark olmadığını ve her ikisinin de farklı durumlardaki nesneleri günlüğe kaydedildiklerinden daha fazla gösterdiklerini göstermektedir.
Ne demek istediğimi görmek için Chrome konsolunda ( Ctrl+ Shift+ J) deneyin :
> o = { foo: 1 }
> console.log(o)
> o.foo = 2
Şimdi, [Object]günlük ifadesinin altına genişletin ve foo2 değeriyle gösterildiğine dikkat edin . Deneyi dirbunun yerine kullanarak tekrarlarsanız da aynı durum geçerlidir log.
Benim sorum şu, görünüşte aynı iki fonksiyon neden var console?
console.dirdeğişmez, bu nedenle büyük bir fark yaratır.
console.dir(): bu özellik standart değildir ! Yani üretimde kullanmayın;)


console.log([1,2])veconsole.dir([1,2])farkı göreceksiniz.