美文网首页
如何观察JS代码的执行时长

如何观察JS代码的执行时长

作者: Hanz520 | 来源:发表于2017-12-17 02:04 被阅读0次

在开发当中,我们有时候需要知道JS代码从这个函数执行到下一个函数大概花费多久时长,进而对我们的代码进行优化。通常的做法是在计时开始处new一个时间对象,记录下来:

var timeStart = (new Data).getTime()

然后到了计时结束的地方再new一个时间对象,减去前者得到时长:

var timeEnd = (new Data).getTime()
var timeDiff =  timeEnd - timeStart 

但是现在有更便捷的方法,不需要new时间对象就可以获取经历时长了,直接利用Date.now()的方法获取自1970年1月1日 00:00:00 UTC到当前时间的毫秒数

var timeStart = Date.now()

计时结束点:

var timeEnd = Date.now()
var timeDiff =  timeEnd - timeStart 

另外,这个方法对于浏览器的兼容性还是不错的


PC 手机

如果你觉得毫秒级别的计算不满足你的需求,这里还有JS提供的微妙级别的时间获取。

window.performance.now()

该时间戳的值是从window.performance.timing接口的navigationStart属性中的时间戳值为起始点开始计时的

如果你单纯只是想在控制台观察执行的时长,这里有更简便的方式(console.time / console.timeEnd)

// 计时开始点
console.time('label')    // label代表计时器名字
/*** code ***/
// 计时结束点
console.timeEnd('label')

执行console.timeEnd的时候会在控制台输出

label: 19.502ms

相关文章

  • 如何观察JS代码的执行时长

    在开发当中,我们有时候需要知道JS代码从这个函数执行到下一个函数大概花费多久时长,进而对我们的代码进行优化。通常的...

  • 前端面试题js:V8引擎机制

    6.V8如何执行一段JS代码 6.1 为什么用v8执行js代码 编写了js代码想要交给cpu去执行,但是js代码直...

  • JS逆向分析

    大概流程:(1).知道如何寻找登录接口 (2)知道如何确定Js的位置 (3)知道如何观察js的执行过程 (4...

  • JavaScript之执行上下文栈

    JS的可执行代码 JS的可执行代码分为3种: 全局代码、函数代码、eval代码, 这里我们重点讨论下执行一个函数的...

  • js预解析(面试哦)

    js 代码通过 js 解释器(js 引擎) 来执行的 js 解释器 来执行js 代码分为两步: 首先预解析 再 ...

  • 怎么来理解Js是单线程的这句话?

    Js是单线程指的是执行Js代码的只有Js引擎主线程。Js在js引擎中同步执行,永远都是运行执行栈最顶部的代码。那么...

  • 如何优雅的打印代码执行时长

    如何优雅的打印代码执行时长 System方式 不推荐 JDK8 处理方式 不推荐 Commons-lang3的St...

  • swift和javaScriptCore交互

    JSContext:JSContext是JS的执行环境,通过evaluateScript()方法可以执行JS代码 ...

  • 前端经典面试题合集(一)

    1.谈谈变量提升 考察点:js基础知识,js执行机制,变量的提升答:执行js代码时,会生成执行环境,在函数中的代码...

  • node学习笔记(四十二)

    一、前端EventLoop 1、什么是eventLoop? 同步任务和异步任务在js中是如何执行的呢?js的代码运...

网友评论

      本文标题:如何观察JS代码的执行时长

      本文链接:https://www.haomeiwen.com/subject/fkxywxtx.html