我有一个带有参数的函数:setTimeout("progressBar("+val+")",300);
。为什么我必须在 val
旁边添加 +,使其变为 +val+
?
函数调用的上下文:
function progressBar(val){
var pro_bar = document.getElementById("progress_bar");
var stat = document.getElementById("status");
stat.innerHTML = val + "%";
pro_bar.value = val;
val++;
var load = setTimeout("progressBar("+val+")",300);
if(val == 100){
stat.innerHTML = "100%";
pro_bar.value = 100;
clearTimeout(load);
document.getElementById("text").innerHTML = "Process Complete";
}
}
var initial_value = 0;
progressBar(initial_value);
最佳答案
JavaScript 中的 +
可用于字符串连接。
例如
"This "+ "That"
结果:"This That"
(两个字符串连接在一起)"This "+ 1
结果:"This 1"
(int 将转换为字符串并连接)var varName = "一个值"; "This "+ varName
结果:"This A value"
(变量的值将添加到字符串中)
在您发布的情况下,该字符串将导致 progressBar()
被调用,并传入名为 val
的变量。
关于javascript - 参数中加 '+'的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37481624/