• Node.js Video Tutorials

NodeJS - console.time() 方法



Node.js 的 console.time() 方法启动一个计时器,我们可以用它来跟踪操作或任何函数的执行时间。我们可以用唯一名称为每个计时器贴标签,在一个指定的网页上最多可以运行 10,000 个计时器。

要结束计时器,我们需要调用 console.timeEnd() 方法并使用相同的名称。输出将以毫秒为单位。例如,如果经过的时间是 8942ms,则 console.timeEnd() 方法显示为“8.942s”。让我们进入 Node.js 的 console.time() 方法的语法和用法。

语法

以下是 Node.js console.time() 方法的语法:

console.time(label);

参数

  • label − 可以作为参数传入方法中,并使用唯一名称。我们可以为不同的函数或操作使用不同的标签。如果我们没有向此函数传递任何参数,它将把“default”作为默认标签。

返回值

此方法不会返回任何值,而是启动计时器来计算特定操作或函数所花费的时间,要结束计时器,我们需要调用 Node.js 的 console.timeEnd() 方法。

示例

在下面的示例中:

  • 我们正在创建一个函数并执行两个变量的加法。

  • 在这里,我们正在函数内部启动计时器,也在函数内部结束计时器。

  • 我们没有向方法中传递任何参数(label),因此标签为“default”。

function func() {
   console.time();   
   var a = 6, b = 5;
   var c = a + b;  
   console.timeEnd();
   return c;
}
console.log("Result of adding 6 and 5: " + func());

输出

正如我们在下面的输出中看到的,返回执行操作所花费的时间。由于我们没有在方法内部传递任何 label,因此它标记为 default

default: 0.054ms
Result of adding 6 and 5: 11

示例

在下面的示例中,我们正在创建一个函数,并执行一个操作来打印特定数字的乘法表,直到指定的级别。现在,我们正在为计时器传递一个标签。

function func() {
   console.time("Time taken")
   var table = 6;
   var length = 5;
   var i = 1;   
   console.log("Multiplication table of : "+ table);
   for(i=1; i <= length; i++)
   console.log(table+" * "+i+" = " +(i * table));
}
func();
console.timeEnd("Time taken")

输出

正如我们在下面的输出中看到的,返回执行操作所花费的时间。由于我们在方法内部传递了一个 label,因此计时器会相应地标记名称。

Multiplication table of : 6
6 * 1 = 6
6 * 2 = 12
6 * 3 = 18
6 * 4 = 24
6 * 5 = 30
Time taken: 1.794ms

示例

在下面的示例中:

  • 我们正在创建一个函数,并在其中创建一个包含字符串元素的数组。

  • 我们正在将元素推入数组。

  • 然后,我们调用不带 label 参数和带 label 参数的 console.time() 方法。因此,有两个不同的计时器。

function func() {
   console.time();
      var array = ["Robo", "2.0", "Kabali", "Basha"];
      array.push("Kaala","Darbar");
      console.log(array);   
   console.time("Timer 1")
      array.push("Sivaji", "Jailer");
      console.log(array);
   console.timeEnd("Timer 1");
};
func();
console.timeEnd();

输出

如果我们编译并运行上面的程序,我们将得到以下输出。两个计时器都显示执行其特定操作所花费的时间。

[ 'Robo', '2.0', 'Kabali', 'Basha', 'Kaala', 'Darbar' ]
[
  'Robo',   '2.0',
  'Kabali', 'Basha',
  'Kaala',  'Darbar',
  'Sivaji', 'Jailer'
]
Timer 1: 0.337ms
default: 7.011ms
nodejs_console_module.htm
广告