效率 - 设置间隔与对象监视

Efficiency - setInterval vs Object.watch

本文关键字:对象 监视 设置 效率      更新时间:2023-09-26

我有一个关于JavaScript效率的问题。 我想创建一个"观察者"来监视特定成员,并在更改时执行函数。 我见过两种方法:

1) 一个设置的间隔,连续比较旧值与当前值,并在有变化时触发回调

2) 对象.手表

我已经读到Object.watch会产生一些开销,但我很好奇上面的哪种方法最有效? 如果有其他方法,请随时告诉我!

您还可以将成员包装在设置新值后触发事件的更新函数中,并在代码中的其他位置侦听该事件。那将是相当有效的。

(旁注:您应该使用Object.observe()因为Object.watch()特定于FF

如果这是关于特定属性的,那么在许多意义上最好使用虚拟属性机制并提供自己的二传手。检查对象.定义属性