Di Chrome consoleobjek mendefinisikan dua metode yang tampaknya melakukan hal yang sama:
console.log(...)
console.dir(...)
Saya membaca di suatu tempat online yang dirmengambil salinan objek sebelum login, sedangkan loghanya melewati referensi ke konsol, yang berarti bahwa pada saat Anda pergi untuk memeriksa objek yang Anda login, mungkin telah berubah. Namun beberapa pengujian awal menunjukkan bahwa tidak ada perbedaan dan bahwa mereka berdua berpotensi menunjukkan objek di negara yang berbeda daripada ketika mereka login.
Coba ini di konsol Chrome ( Ctrl+ Shift+ J) untuk melihat apa yang saya maksud:
> o = { foo: 1 }
> console.log(o)
> o.foo = 2
Sekarang, perluas di [Object]bawah pernyataan log dan perhatikan bahwa itu ditampilkan foodengan nilai 2. Hal yang sama berlaku jika Anda mengulangi percobaan menggunakan dirbukan log.
Pertanyaan saya adalah, mengapa kedua fungsi yang tampaknya identik ini ada console?
console.dirtidak berubah, jadi itu membuat perbedaan besar.
console.dir(): fitur ini tidak standar ! Jadi jangan menggunakannya pada produksi;)


console.log([1,2])danconsole.dir([1,2])Anda akan melihat perbedaannya.