gpt4 book ai didi

javascript - 如何使用js自动识别json值的变化

转载 作者:行者123 更新时间:2023-12-01 01:04:35 26 4
gpt4 key购买 nike

我正在制作一个网络应用程序,它可以可视化动态变化数据的变化。数据由 json 组成,有两个键和两个值(float Number 和 Date())。该值不是定期更改,而是几乎每分钟更改一次。我想找到不使用 js setInterval() 的值更改。

我已经尝试过 setInterval() 但是,很难获得实际的改变。因为json值改变的周期不规律。有时最小180ms,最大16000ms

json形式就是这样......

{
key : 10,
time : /*new Date()*/
}

结果应该是这样的

current value : 20 (updated 2019.4.19 11:01)
the difference is +10

最佳答案

尝试使用Proxy对象。

本质上,代理是对象的包装器,但具有针对所有属性的预定义 getter 和 setter。您可以按如下方式创建代理:

const obj = {a: 1, b: 2};
const proxy = new Proxy(obj, {
set(target, propName, value) {
console.log(`Method value has changed, previous is ${target[propName]}, next value is ${value}`)
target[propName] = value;
return target[propName];
}
})

现在您可以在 setter 中编写任何副作用并使用代理对象而不是原始对象。

proxy.a = 7 // will log "Method value has changed, previous is 1, next value is 7"

关于javascript - 如何使用js自动识别json值的变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55763067/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com