go - golang 时差条件(子)
问题描述
我有两次,t1
和t2
。为了计算差异,我使用,
diff := t2.sub(t1)
上面的代码返回差异,如10m30s
等1h3m59s
。
我需要为差异创造一些条件。例如,
if diff <= 5m {
do this
}
if diff > 20m {
do that
}
我的问题是是否有任何内置方法来比较时差。
我的另一个选择是用正则表达式解析返回的差异,然后进行比较。但我一直在寻找一些有效的方法,比如sub
time 包提供的方法。
解决方案
t2.Sub(t1)
返回一个持续时间,您可以简单地使用比较运算符,例如:
d, _ := time.ParseDuration("4m4s")
if d <= 5 * time.Second {
fmt.Println("<= than limit")
} else {
fmt.Println("> than limit")
}
推荐阅读
- javascript - 我应该如何在 vue3 中使用 gsap.timeline()
- javascript - 想将光标更改为即时生成的光标图像
- java - 试图理解可重入锁条件
- docker - Jelastic 中的 SSL 和端口转发:部署 Strapi
- python - python - 如何在 Seaborn 中一起创建多个 regplots
- php - 使用 PHP 获取 ICU MessageFormatter 参数
- kotlin - Kotlin 修改默认构造函数
- leaflet - 根据图标的位置自动缩放传单
- javascript - 如何使用 AudioContext 可视化来自 Blob 的录制音频?
- typescript - 如何从现有类型定义类型但使用可选键(不使用 Partial)?