我试图找到一种方法来告诉一个函数在几秒钟内执行需要多长时间。目前我正在这样做:
let startDate = Date()
let endDate = Date()
let calendar = Calendar.current
let dateComponents = calendar.compare(startDate, to: endDate, toGranularity: .second)
let seconds = dateComponents.rawValue
print("Seconds: \(seconds)")
但是每次我打印出秒时,它总是显示为-1。我研究了这个问题:经过的时间,但我需要输出以秒为单位。有什么建议吗?
试试这个:
let start = Date.timeIntervalSinceReferenceDate
// do stuff
let end = Date.timeIntervalSinceReferenceDate
let secondsElapsed = end - start
秒经过
将是Double
,但它将以秒为单位。如果您想要Int
,您可以将其舍入或截断。
希望这有帮助!
问题内容: 我需要获取执行时间(以毫秒为单位)。 我最初在2008年问这个问题。当时接受的答案是使用。new Date().getTime()但是,我们大家都可以同意,使用标准performance.now()API更合适。因此,我正在更改对此答案的公认答案。 问题答案: 使用 : NodeJs:需要导入performance类 使用:(非标准)(生活水平)
计算一个函数执行的时间。 使用 console.time() 和 console.timeEnd() 来测量开始和结束时间之间的差,以确定回调执行的时间。 const timeTaken = callback => { console.time('timeTaken'); const r = callback(); console.timeEnd('timeTaken'); ret
问题内容: 找出特定请求花费了多长时间的好方法是什么? 我想获取此信息,然后将其显示在页面上的某处。 回答??:::: 我是javascript新手,如果您不想内联“ success”函数(因为它将是一个更大的函数),这是我能想到的最好的方法(这是执行此操作的好方法)吗?我觉得我已经把事情复杂化了…: 问题答案: @codemeit是正确的。他的解决方案如下所示,将jQuery用于ajax请求。这
我有以下代码 我试图对流进行基准测试,但在一次又一次地调用相同的函数时,执行时间稳步下降
问题内容: 我需要获取执行时间(以毫秒为单位)。 当时接受的答案是使用newDate()。getTime()。但是,我们现在都可以同意使用标准performance.now()API更合适。因此,我正在更改对此答案的公认答案。 问题答案: 使用 performance.now(): :需要导入类 使用 console.time: (非标准) (living standard) 注意 : 传递给和方
问题内容: 我需要测量程序某些部分所花费的时间(不是用于调试,而是作为输出中的功能)。准确性很重要,因为总时间将不到一秒钟。 当我遇到timeit时,我将使用time模块,该模块声称 避免了一些用于度量执行时间的常见陷阱 。不幸的是,它有一个糟糕的接口,需要一个字符串作为输入,然后才是eval的。 __ 因此,我是否需要使用此模块来准确地测量时间,还是时间足够?它指的是什么陷阱? 谢谢 问题答案: