mirror of
https://github.com/Foundry376/Mailspring.git
synced 2024-11-12 04:25:31 +08:00
28 lines
839 B
CoffeeScript
28 lines
839 B
CoffeeScript
|
# Public: Measure how long a function takes to run.
|
||
|
#
|
||
|
# description - A {String} description that will be logged to the console when
|
||
|
# the function completes.
|
||
|
# fn - A {Function} to measure the duration of.
|
||
|
#
|
||
|
# Returns the value returned by the given function.
|
||
|
window.measure = (description, fn) ->
|
||
|
start = Date.now()
|
||
|
value = fn()
|
||
|
result = Date.now() - start
|
||
|
console.log description, result
|
||
|
value
|
||
|
|
||
|
# Public: Create a dev tools profile for a function.
|
||
|
#
|
||
|
# description - A {String} description that will be available in the Profiles
|
||
|
# tab of the dev tools.
|
||
|
# fn - A {Function} to profile.
|
||
|
#
|
||
|
# Returns the value returned by the given function.
|
||
|
window.profile = (description, fn) ->
|
||
|
measure description, ->
|
||
|
console.profile(description)
|
||
|
value = fn()
|
||
|
console.profileEnd(description)
|
||
|
value
|