我正在使用
console.log(p);
console.log(p.datestrshow);
然而,控制台中的输出是
为什么它显然不明确?
<小时/> 做
for(i in p)
console.log(i+': ', (typeof p[i] == 'function' ? 'function' : p[i]));
结果为
答案 0 :(得分:0)
当您调用console.log
时,p
不会复制您的p.datestrshow
对象。
当您console.log
时,p
确实未定义,但是当您在控制台中展开p
对象时,它已被定义,并且控制台正在显示定义datestrshow
的{{1}}对象的当前状态。
这是您可以在控制台中进行的测试:
var test = {a:'a'};
console.log( test ); // log to the console before we define 'b'
test.b = 'b';
在控制台中运行此代码,然后展开已记录的对象。即使我们在b
之后明确定义了console.log
,但在展开对象时它仍会显示。