Di Chrome console
objek mendefinisikan dua metode yang tampaknya melakukan hal yang sama:
console.log(...)
console.dir(...)
Saya membaca di suatu tempat online yang dir
mengambil salinan objek sebelum login, sedangkan log
hanya 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 foo
dengan nilai 2. Hal yang sama berlaku jika Anda mengulangi percobaan menggunakan dir
bukan log
.
Pertanyaan saya adalah, mengapa kedua fungsi yang tampaknya identik ini ada console
?
console.dir
tidak 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.