使用this [varName] =以varName作为参数的函数中的变量来更改变量有多安全?

时间:2019-06-08 19:48:08

标签: javascript angular typescript

该函数尚未完成,但我想知道具有以这种方式更改变量的函数有多“安全”。

我使用的是具有实用功能的角度服务,contextthis,而我称之为该功能的组件中的其余部分应该是不言自明的。

changeValueOverTime(context: any, varToChange: string, amount: number, intevalTime: number) {
    const inteval = setInterval(() => {
      context[varToChange] = 200;
    }, intevalTime);
  }

编辑:

已完成的功能可以在这里找到:https://stackoverflow.com/a/56513910/11202842

1 个答案:

答案 0 :(得分:2)

这真是个坏主意!每次使用RXJS interval和map发出新值,然后将此Observable订阅到您的组件中。

changeValueOverTime(intevalTime: number) {
    return interval(intevalTime).pipe(map(() => 200));
}

以及您的组件中:

changeValueOverTime().subscribe(newValue => this.varToChange = newValue);