for*_*fly -6 javascript variables jquery memory-management typescript
我有一个变量oneDay
,我为其分配了一个整数
var oneDay = 24 * 60 * 60 * 1000; // hours*minutes*seconds*milliseconds
Run Code Online (Sandbox Code Playgroud)
我在oneDay
声明代码的函数终止结束时释放使用以下语法占用的内存.
var oneDay=null;
Run Code Online (Sandbox Code Playgroud)
我得到的错误:
错误TS2134:后续变量声明必须具有相同的类型.变量'oneDay'必须是'Date'类型,但这里的类型为'null'.
什么可能是解决方案?谢谢
内存是在JavaScript中为您管理的.
所有现代浏览器都使用标记和扫描算法来检测无法访问的对象(一些较旧的浏览器使用引用计数算法,该算法无法收集存在引用循环的对象,因为总会有引用)*.
一旦无法再引用一个对象,它就有资格进行垃圾收集(尽管垃圾收集将在某个时刻发生,而不是立即进行).
总的来说,您不需要关心JavaScript或TypeScript中的内存管理 - 除非您有可测量的问题.
(*来自Pro TypeScript,p168-170)