谁能解释一下console.count的实现吗?

问题描述 投票:0回答:3
var user = "";

function greet() {
 console.count();
 return "hi " + user;
}

user = "bob";
greet();
user = "alice";
greet();
greet();
console.count();

在上面的示例中,控制台显示 1、2、3,然后显示 1。 console.count 是如何工作的?谁能解释一下吗?

javascript node.js
3个回答
1
投票

在这里您可以找到答案https://developer.mozilla.org/en-US/docs/Web/API/Console/count

简述:

此函数记录此特定调用的次数

count()
已被呼叫。该函数采用可选参数
label

如果提供

label
,此函数会记录次数
count()
已被调用为特定的
label

如果省略

label
,该函数会记录次数
count()
已被调用在该特定行

这就是为什么你会得到不同的结果,因为在函数内部调用了 3 次,假设它是第 4 行,并且在另一行(脚本中的最后一行)调用了一次。


0
投票

您连续调用了greet()函数3次,这就是为什么它打印1 2 3。但是在函数console.count()之外执行了1次,这就是为什么它打印1。


0
投票

来自 https://console.spec.whatwg.org/#count

1.2.1。计数(标签)

令map为关联的计数图。

如果map[label]存在,则将map[label]设置为map[label] + 1。

否则,将map[label]设置为1。

令 concat 为标签 U+003A (:)、U+0020 SPACE 的串联, 和 ToString(地图[标签])。

执行 Logger("count", « concat »)。

另请参阅 Node.js 的实际实现

© www.soinside.com 2019 - 2024. All rights reserved.