当我在控制台中编写此代码时,它的日志未定义。
var obj = { first: 'lorem' };
但是当我在控制台中编写它时,它就是日志对象。
var obj = { first: 'lorem' };
obj = { second: 'ipsum' };
为什么会这样?
答案 0 :(得分:1)
您看到的输出值是您执行的代码行的return
值。
var obj = {first: 'lorem'};
返回undefined
,而
obj = {second: 'ipsum'};
将返回分配给obj
的对象,因此将打印{second: 'ipsum'}
。
这就是为什么您可以做以下事情的原因:
var a = b = 2;
此处b = 2
的赋值会将b
设置为2,同时 还返回2
,从而将a
设置为{{1 }}
答案 1 :(得分:0)
您在控制台中执行的所有操作都会显示其返回值。在声明和分配变量时,它将返回未定义。仅将值分配给变量时,将返回该值。