当某个变量的值发生变化时,是否可以在 JS 中触发一个事件?接受 JQuery。
原文由 rashcroft22 发布,翻译遵循 CC BY-SA 4.0 许可协议
当某个变量的值发生变化时,是否可以在 JS 中触发一个事件?接受 JQuery。
原文由 rashcroft22 发布,翻译遵循 CC BY-SA 4.0 许可协议
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
这个问题最初是在 2009 年发布的,大多数现有答案要么过时、无效,要么需要包含大型臃肿的库:
自 2018 年起, 您现在可以使用 Proxy 对象 来监视(和拦截)对对象所做的更改。它专为 OP 尝试做的事情而构建。这是一个基本示例:
Proxy
对象的唯一缺点是:Proxy
对象在旧版浏览器(如 IE11)中不可用, polyfill 无法完全复制Proxy
功能。Date
)并不总是表现得像预期的那样Proxy
对象最好与普通对象或数组配对。如果您需要观察对 嵌套对象 所做的更改,那么您需要使用专门的库,例如 Observable Slim (我已发布) 。它是这样工作的: