1.堆中存放的是变量地址,栈中存中的是值
2.堆栈溢出
当存储的数据达到一定限制时就会造成堆栈溢出,但是栈中会自动清除无用的数据,所以不会溢出 ,但是堆中的数据不会自动回收,所以会出现堆溢出
3.堆栈溢出产生的原因
内存泄露,当不断向堆中存储数据,而不进行清理
4.避免内存溢出的方法
垃圾回收机制,栈中的没有被引用的内容系统会自动清理
语言当中一般分为2种,一种是自动清理,一种是手动清理,js中只有自动清理,浏览器关闭时会自动进行清理
obj=null 将所有的引用关系都切掉后,就会被回收掉
js中的垃圾回收机制就是将引用地址中的对象设置为 Null,并且将所有引用该地址的对象都设置为null,不会及时清除,垃圾回收车会根据内存的情况在适当的时候清除堆中的孤儿对象
网友评论