我正在尝试将已用时间添加到Date()对象(它用于定时操作的恢复按钮)。
以下是负责计算变更startDate
的代码的恢复部分。我希望它将elapsed
TimeInterval
添加到startDate
。
这是代码:
print(startDate)
let elapsed = resumeTime - startDate.timeIntervalSinceReferenceDate
print(elapsed)
startDate.addTimeInterval(elapsed)
print(startDate)
这是在运行约2分钟后暂停计时器约3秒时的输出。
输出:
2016-11-17 08:24:15 +0000
110.831687986851
2016-11-17 08:26:06 +0000
第二个印刷日期应该更像是:
2016-11-17 08:24:18 +0000
addTimeInterval
的定义是:
将TimeInterval添加到此日期。
这不正是我想要的吗?我不正确地解释这个吗?
注意,点击暂停按钮时会定义resumeTime
。设置如下:
resumeTime = Date.timeIntervalSinceReferenceDate
感谢。
答案 0 :(得分:1)
这是在运行约2分钟后暂停计时器约3秒时的输出。
虽然,<li id ="productStock" class="productStock">In Stock: 4</li>
<script>
var numberInStock = 0 // actual number of stock
var msg = '';
if (numberInStock > 0) {
msg = 'In stock';
} else {
msg = 'Out of stock';
}
$('#productStock').html(msg)
</script>
时间是2分钟。
确保您在正确的位置开始经过,同时确保此行生成所需的时间戳:
elapsed
以下是与您的代码非常相似的代码示例,resumeTime = Date.timeIntervalSinceReferenceDate
运行良好。
addTimeInterval
<强>输出强>
let resume = Date().timeIntervalSinceReferenceDate + 2
print(startDate)
let elapsed = resume - startDate.timeIntervalSinceReferenceDate
print(elapsed)
startDate.addTimeInterval(elapsed)
print(startDate)
答案 1 :(得分:1)
我认为您的代码中的错误是您再也没有设置LR_wbSelect
,因此您的startDate
计算总是基于应用首次运行的时间,而不是自您上次启动以来经过的时间暂停。