监听Javascript对象中属性值的变化

5 浏览
0 Comments

监听Javascript对象中属性值的变化

在查看Javascript文档时,我发现以下两个Javascript对象上的函数看起来很有趣:

.watch - 监听属性的赋值操作,并在发生时运行一个函数。

.unwatch - 移除通过watch方法设置的监视点。

更新:废弃警告

请不要使用watch()和unwatch()!这两个方法仅在Firefox版本58之前实现,它们已被废弃,并在Firefox 58+中移除。

示例用法:

o = { p: 1 };

o.watch("p", function (id,oldval,newval) {

console.log("o." + id + " 从 " + oldval + " 变为 " + newval)

return newval;

});

每当我们更改属性“p”的值时,该函数都会被触发。

o.p = 2; //输出: "o.p 从 1 变为 2"

我在过去的几年中一直在使用Javascript,但从未使用过这些函数。

请问有人能够提供一些这些函数会派上用场的好例子吗?

0