console.dir 和 console.log 有什么区别?
2022-08-29 23:24:17
在Chrome中,该对象定义了两种似乎执行相同操作的方法:console
console.log(...)
console.dir(...)
我在网上读到过,在记录对象之前会获取对象的副本,而只是将引用传递到控制台,这意味着当您检查记录的对象时,它可能已经更改。然而,一些初步测试表明,没有区别,并且它们都可能显示与记录时不同状态的对象。dir
log
在Chrome控制台(++)中尝试此操作,以了解我的意思:CtrlShiftJ
> o = { foo: 1 }
> console.log(o)
> o.foo = 2
现在,展开 log 语句下方的 ,请注意,它显示的值为 2。如果使用 而不是 重复实验,情况也是如此。[Object]
foo
dir
log
我的问题是,为什么这两个看似相同的函数存在?console