堆栈溢出?
当存储的数据达到某一限制时就会造成堆栈溢出。注意:栈当中的数据一旦运行完会自动清除掉,所有栈不会溢出;所有说的堆栈溢出是指堆溢出,而堆中存储的地址是有关栈的,因此叫堆栈溢出。
堆栈溢出的原因是:内存泄漏,即当不断向堆中存储数据,而不进行清理,这就是内存泄漏。内存泄漏的结果就是堆栈溢出。
解决内存泄漏/堆栈溢出的是垃圾回收机制。在其他编程语言中,这种清理分为两种,一种是自动清理(像布尔值),一种是手动清理(gc)。在JavaScript中只有自动清理(即要清理把浏览器关了就行)。
垃圾回收机制就是将引用堆中地址的对象设置为null,并且将所有引用该地址的对象都设置为null,注意不会立即清除,垃圾回收车会根据内存的情况在适当的时候清除堆中的孤儿对象。