Javascript 计算()count.forEach(i=>;i.innerHTML=+;1+;thx)?

Javascript 计算()count.forEach(i=>;i.innerHTML=+;1+;thx)?,javascript,Javascript,我是Javascript的初学者。单击后,该数字应增加1。 我不想在这里使用标记ID,但好像是在类中创建的 let clicks=document.querySelectorAll('.counterprigger');//IE8 let count=Array.from(document.querySelectorAll('.counter'); let please=Array.from(document.queryselectoral('.countprease'); let pleas

我是Javascript的初学者。单击后,该数字应增加1。 我不想在这里使用标记ID,但好像是在类中创建的

let clicks=document.querySelectorAll('.counterprigger');//IE8
let count=Array.from(document.querySelectorAll('.counter');
let please=Array.from(document.queryselectoral('.countprease');
let pleaseTxt=“单击!请单击!”;
让我;
让thx=“点击!谢谢!”;
please.forEach(i=>i.innerHTML=pleaseTxt);
for(设i=0;ii.innerHTML=+plus+thx);
forEach(i=>i.innerHTML=“”);
}
}

按钮
1.

您可以使用
i.innerHTML.match(/\d+/)[0]
innerHTML
中检索
number
值。使用
+
作为
前缀
,以便将其转换为
数字
。然后添加
1
和附加
thx

您只需要更新一行代码,即
count.forEach(i=>i.innerHTML=(+i.innerHTML.match(/\d+/)[0])+1)+thx)

您可以检查下面的输出

let clicks=document.querySelectorAll('.counterprigger');//IE8
let count=Array.from(document.querySelectorAll('.counter');
let please=Array.from(document.queryselectoral('.countprease');
let pleaseTxt=“单击!请单击!”;
让我;
让thx=“点击!谢谢!”;
please.forEach(i=>i.innerHTML=pleaseTxt);
for(设i=0;ii.innerHTML=(+i.innerHTML.match(/\d+/)[0])+1)+thx);
forEach(i=>i.innerHTML=“”);
}
}

按钮
1.

您可以使用
i.innerHTML.match(/\d+/)[0]
innerHTML
中检索
number
值。使用
+
作为
前缀
,以便将其转换为
数字
。然后添加
1
和附加
thx

您只需要更新一行代码,即
count.forEach(i=>i.innerHTML=(+i.innerHTML.match(/\d+/)[0])+1)+thx)

您可以检查下面的输出

let clicks=document.querySelectorAll('.counterprigger');//IE8
let count=Array.from(document.querySelectorAll('.counter');
let please=Array.from(document.queryselectoral('.countprease');
let pleaseTxt=“单击!请单击!”;
让我;
让thx=“点击!谢谢!”;
please.forEach(i=>i.innerHTML=pleaseTxt);
for(设i=0;ii.innerHTML=(+i.innerHTML.match(/\d+/)[0])+1)+thx);
forEach(i=>i.innerHTML=“”);
}
}

按钮
1.

关于您的问题,有两个方面,首先是
+
的用法:

操作符
+
在Javascript中可能有点棘手。在用于连接字符串的同时,它还用于。一个很好的例子是,如果您有一个字符串
“1”
,并应用
+
,如
+“1”
,这将成为
1
,一个
数字
,而不是它原来的
字符串
类型。如果您写入
1+“7”
,这将变成
“17”
,因为将应用串联

其次是你报告的问题。如果我没弄错的话,你的想法是每次点击按钮时增加计数器。但是,如果检查代码,则每次单击按钮时,都会出现一个运行匿名函数的
onclick
事件

单击[i].onclick=function(){
设+1;
count.forEach(i=>i.innerHTML=+plus+thx);
forEach(i=>i.innerHTML=“”);
}
如果仔细检查,每次单击
plus
时,变量总是以
1
启动。为了在每次单击时增加该值,您必须找到一种策略,在单击事件中修改其值,而不是总是声明它

最简单的方法是在函数外部声明变量,例如:

let plus=1;
单击[i]。onclick=函数(){
count.forEach(i=>i.innerHTML=plus+thx);
forEach(i=>i.innerHTML=“”);
}

根据问题的不同,您还可以使用最适合的数组或其他数据结构来跟踪多个
值,但其背后的思想是相同的:您需要访问当前值,增加它并存储它以供下次使用。

关于您的问题,有两个方面,首先是
+
的用法:

操作符
+
在Javascript中可能有点棘手。在用于连接字符串的同时,它还用于。一个很好的例子是,如果您有一个字符串
“1”
,并应用
+
,如
+“1”
,这将成为
1
,一个
数字
,而不是它原来的
字符串
类型。如果您写入
1+“7”
,这将变成
“17”
,因为将应用串联

其次是你报告的问题。如果我没弄错的话,你的想法是每次点击按钮时增加计数器。但是,如果检查代码,则每次单击按钮时,都会出现一个运行匿名函数的
onclick
事件

单击[i].onclick=function(){
设+1;
count.forEach(i=>i.innerHTML=+plus+thx);
forEach(i=>i.innerHTML=“”);
}
如果仔细检查,每次单击
plus
时,变量总是以
1
启动。为了在每次单击时增加该值,您必须找到一种策略,在单击事件中修改其值,而不是总是声明它

最简单的方法是在函数外部声明变量,例如:

let plus=1;
cli