利用奇偶数来获取websocket推送时间间隔(或者比较前一个数和下一个数的变化)
利用奇偶数来获取websocket推送时间间隔(或者比较前一个数和下一个数的变化)
在vue中的
data () {
return {
countTime: 0,
newDataTime: null,
dataTime: null,
timestamp: null, // 当前时间戳和下一次推送时间戳差
}
}
methods: {
/**
* websocket返回信息回调
*/
wsMessage (data) { // websocket主动推送数据一次就记录一下时间
// 时间戳差
this.countTime++
if (this.compareIdNum % 2 === 0) { // 偶数执行 // if (this.countTime >= 2)
this.newDataTime = Date.parse(new Date())
this.timestamp = this.newDataTime - this.dataTime
this.countTime = 0 // 重置一下判断数字
} else { // 奇数执行,执行一次深拷贝一下
this.dataTime = Date.parse(new Date())
}
console.log('当前时间戳',this.timestamp);
}
}
此方法很容易理解,只是一个比较前后变化的差异的思路,不仅仅只是在websocket中适用,其它场景也可以尝试,更好的思路期待交流分享。
长风破浪会有时,直挂云帆济沧海