Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 当对象被销毁时,对象内的常量变量会发生什么变化?_Angular_Memory_Constants - Fatal编程技术网

Angular 当对象被销毁时,对象内的常量变量会发生什么变化?

Angular 当对象被销毁时,对象内的常量变量会发生什么变化?,angular,memory,constants,Angular,Memory,Constants,我只是想知道是否一直忠实地遵循tslint是可以的,因为它建议我在不重新分配时使用const而不是let(这很有意义)。尽管我听另一位开发人员告诉我,使用const是不好的,因为它无法收集垃圾来清除内存 我想更好地理解在对象中使用const的危险。在下面的示例中,我很担心我是否导致Angular应用程序内存泄漏 例如,在角度应用程序中: import 'rxjs/add/operator/map'; class MyComponentObject { constructor(privat

我只是想知道是否一直忠实地遵循tslint是可以的,因为它建议我在不重新分配时使用const而不是let(这很有意义)。尽管我听另一位开发人员告诉我,使用const是不好的,因为它无法收集垃圾来清除内存

我想更好地理解在对象中使用const的危险。在下面的示例中,我很担心我是否导致Angular应用程序内存泄漏

例如,在角度应用程序中:

import 'rxjs/add/operator/map';

class MyComponentObject {
   constructor(private activatedRoute: ActivatedRoute) {}

   ngOnInit() {
      this.queryParams$ = this.activatedRoute
        .queryParamMap
        .map(params => {

         // is this bad?
         const something = params.get('something') || null;

      })
   }
}
const是否仍将继续销毁该对象(ngDestory)。每次初始化这个类时,它会以某种方式一次又一次地建立在内存上吗


因此,一般来说,在内存方面这样做可以吗?

const
只是意味着不能重新分配变量。它与垃圾收集无关

在代码段中,当
ngOnInit
函数终止时,变量将被销毁。到那时,它拥有的值将有资格进行垃圾收集(除非它在其他地方也被引用)