zoukankan      html  css  js  c++  java
  • 测试 js 方法运行时间(转)

    测试 js 方法运行时间

    早期测速的时候是这样的,呵呵呵,一开始还挺爽的

    1
    2
    3
    4
    5
    6
    function testFunctionTime(fn) {
      var start = new Date().getTime();
      if (fn) fn();
      var end = new Date().getTime();
      console.log(end-start);
    }

    但当遇上 ajax 和 img.onload 的时候那就很尴尬了...

    于是我找到了 console.time(label) 和 console.timeEnd(label),非常 nice !

    在开始的地方写上 console.time("测试 fn 速度: ") ,在结束的地方写上 console.timeEnd("测试 fn 速度: ") 

    label 得相同,然后你就懂了呀,来,互相伤害

    此外,我也对 console 产生了一点兴趣就去测试了更多它的方法,列几个个人最近用的较多的:

    console.count(label)  输出运行次数

    console.table(object|array)  输出表格形态的数据(在动态绘制的检查时用的较多)

    console.group(label) 和 console.groupEnd(label) 将 console 结果进行分组(分类及减少输出版面,但也加大了我们的脑回路呀)(group = groupCollapsed 是一样的)

    console.trace() 检测方法的调用来源,超级赞

    console.profile(label) 和 console.profileEnd(label) 是 time 的升级版,不但测速,直接测性能了,需要到 profile 面板里面才能看到结果

    console.assert(boolean, string) 提示报错可以少个判断

    其实 console.error(), console.info(), console.warn() 实在用得少,用好了应该还是很赞的...吧

    至于其他方法个人感觉就很鸡肋了,如果你也感兴趣,也可以去搜搜看。

    此外,有个装逼的好方法,console.log 可以带样式哟,赶紧试试吧

    1
    console.log("%cHello","color:red");
  • 相关阅读:
    linux运维之分析系统负载及运行状况
    linux运维之分析日志相关命令(1)
    centos7修改网卡名称为eth0
    LANMP环境编译参数查看方法
    自动化部署之搭建yum仓
    浙大 PAT 乙级 1001-1075 目录索引
    更改docker服务网段分配地址
    MySQL主从复制(Replication for Backup)
    MySQL读写分离-简单思考
    NGINX负载均衡缓存配置
  • 原文地址:https://www.cnblogs.com/yasepix/p/6552422.html
Copyright © 2011-2022 走看看