面试的被问到这样一个问题:
var a={b:1};
a.b=a;
问a最终是什么结果?可以猜一猜
当时没有想到这个问题的答案,其实也简单,是个循环引用而已,就是自己引用自己,a最终是个无限的对象:
{b:{b:{b:{b:{b........
如果你用JSON.stringify打印,会报循环引用异常,当时我猜是堆栈溢出异常,又没猜对。
但是你console.log不会有什么问题,因为console.log是动态输出的,可以一层一层展开。
有些tricky
面试的被问到这样一个问题:
var a={b:1};
a.b=a;
当时没有想到这个问题的答案,其实也简单,是个循环引用而已,就是自己引用自己,a最终是个无限的对象:
{b:{b:{b:{b:{b........
但是你console.log不会有什么问题,因为console.log是动态输出的,可以一层一层展开。
有些tricky