[JS] console.time() - 计时器构造函数及如何计时

概述

  使用计时器可以对代码运行过程进行测速。你可以给每个计时器取一个名字,每个页面上最多可以运行一万个计时器。当你使用计时器名字调用 console.timeEnd() 函数时,浏览器会返回一个毫秒值,该值表示该计时器启动到你调用 console.timeEnd() 时的时间。

语法

console.time(timerName);

timerName

  计时器名称,该名称用于标识一个计时器,当使用该名称调用 console.timeEnd() 时会停止相应的计时器,并在控制台输出计时时间。

如何捕获计时器返回值

  很可惜,console.time() 和 console.timeEnd() 只能在控制台输出计时时间,但不能返回输出内容,也就不能赋给变量保存。

  如果需要计时作为变量使用,可以使用 window.performance.now() 函数计时:

var start = window.performance.now();
var end = window.performance.now();
var duration = end - start;

  

  window.performance.now() 返回一个浮点值表示当前距离页面被加载时的毫秒时间,如果想知道页面是何时被加载的,可以获取 window.performance.timing.navigationStart 值,该表示页面加载时的 Unix 时间戳。

  你也可以使用 Date.now() 函数来计时,该函数返回一个整数毫秒值。

var start = Date.now();
var duration = Date.now() - start;

  又或者 Date().getTime() 对象计时,该对象返回的是 Unix 时间戳:

var start = new Date().getTime();
var end = new Date().getTime();
var duration = end - start

  PS:window.performance.now() 会比 Date.now() 慢很多。

[JS] console.time() - 计时器构造函数及如何计时,布布扣,bubuko.com

时间: 2024-11-07 14:42:46

[JS] console.time() - 计时器构造函数及如何计时的相关文章

js中的计时器事件`setTimeout()` 和 `setInterval()`

js中的计时器事件 在js中,通常会有一些事件,我们需要让它 间隔一段时间之后再发生,或者 每隔一段时间 发生一次,那就需要用到我们js中的计时事件 计时事件主要有两种: setTimeout() ---- 间隔一定的时间之后执行 setInterval() ----每间隔一定的时间执行一次(重复性执行) setTimeout() 间隔一定的时间之后`执行指定的语句或函数. 例如:3s后跳转到前一个页面. <script type="text/javascript"> se

JS中的计时器事件

JS可以实现很多java代码不易完成的功能.这里学习一些js中的计时器事件. JavaScript 一个设定的时间间隔之后来执行代码,称之为计时事件. 主要通过两个方法来实现: 1.setInterval() - 间隔指定的毫秒数不停地执行指定的代码. 2.setTimeout() - 暂停指定的毫秒数后执行指定的代码 并且,这两个方法都是window对象的方法. 首先,介绍setInterval()方法,该方法值得是间隔一定的毫秒数不停的执行指定的代码. 语法:window.setInterv

js面向对象程序设计之构造函数

再上一篇的开头说了创建对象的两种方式,一种是Object构造函数的方式,一种是对象字面量的方法.但这些方式创建多个对象的时候都会产生大量的重复代码.经过技术的进步也演化出来许多的创建对象的模式.本章会介绍 工厂模式,原型模式,构造函数模式和构造函数与原型模式的混合使用. 1,工厂模式 工厂模式是一个比较广为人知的模式,这种模式将细节抽象出来.代码如下 function createPerson(name,age,job){ var o =new Object(); o.name=name; o.

初学JS——实现基于计时器的小游戏。

这几天一直在看网易云课堂上免费的JS课程,正好今天看到讲了计时器setInterval,第一感觉就是像C#里的TIMER.然后课程里举得例子正好通过计时器改变新生成窗口的位置, 然后就突然有了灵感!可以写一个“抓住我”的小游戏. 因为刚学JS 懂的实在很少,所以就通过自己已经学过的内容实现了, 主要原理是建一个5X5的表格,每一个格子里放一个DIV,并通过数字命名ID 1-25. 然后就是通过网上找的一个获取随机数的方式,getelementbyid获取随机的一个DIV并且通过innerHTML

轻松理解js的函数和构造函数的区别

如何轻松理解js的函数和构造函数的区别,这是个一直头大的问题,很多例子都没有清晰的描述清楚.. 在这里,我就用平常的道理来阐述一下,希望能理解清楚. 从这里开始入手吧 这是普通函数的定义和调用方式.看起来没什么特别的,但是往下看就有奇怪的东西了. 再做一个: 你没发先一个很奇怪的现象吗? 你的这个函数里面并没有返回什么,也就是没有return ,但是你调用的时候却可以接受啊. 如:var p=new Person('niexiaoqian'); alert(p.name); //niexiaoq

[js高手之路]构造函数的基本特性与优缺点

上文,通过基本的对象创建问题了解了构造函数,本文,我们接着上文继续了解构造函数的基本特性,以及优缺点. 每个对象上面都有一个constructor属性( 严格意义上来说,是原型上的,对象是通过查找到原型找到 constructor属性 ).后面讲到原型的时候,我会用示意图的方式说明 1 function CreateObj(uName) { 2 this.userName = uName; 3 this.showUserName = function () { 4 return this.use

js 关于在子类构造函数中加入call(this)的用意!

先上例子: function Animal(a,b) { this.a = a; this.b = b; } function Dog(c) { //Animal.call(this);//注释<1> } Dog.prototype = new Animal(); Dog.prototype.constructor = Dog; var dog1 = new Dog('tom'); console.log(dog1); var animal = new Animal(); console.lo

03JavaScript程序设计修炼之道_ JS进阶 OOP、构造函数 2019-07/21-171247***0725-200514

note.txt js进阶部分 1 变量及其作用域 全局变量 局部变量 作用域 作用域链 let/var 区别 const 定义常量 2 异步专题 回调函数 同步异步 es6 Promise(使用和手写实现) 3 oop 原型 原型链 面向对象 ... es6 class 等 4 闭包 5 面试题 ... note.md 1 变量与常量 var a = 10; var一些问题 * var重复定义 会覆盖 * 没有块级作用域 * 变量会自动提升 es6 let/const * 重复定义会报错 *

js中的计时器

在JS中做二级菜单时,被一个鼠标移出时隐藏的小问题困扰了很久. <script> function Menu(id){ var _this=this; this.obj=document.getElementById(id); this.trigger=getFirstChild(this.obj); this.menuOne=getLastChild(this.obj); this.menuOneLi=getChildren(this.menuOne); this.menuOneLiA=[]