1、使用匿名函数传递参数
var value = 1000;
setTimeout(function () {
showX(value);
}, 1000);
value = 2000;
function showX(value) {
console.log("The value is "+value);
}输出内容:The value is 2000
2、使用第三个参数
参考:https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout
var timeoutID = scope.setTimeout(function[, delay, param1, param2, ...]); var timeoutID = scope.setTimeout(function[, delay]); var timeoutID = scope.setTimeout(code[, delay]);
var value = 1000;
setTimeout(showX,1000, value);
value = 2000;
function showX(value) {
console.log("The value is "+value);
}输出内容:The value is 1000
本文通过两个示例探讨了在JavaScript中如何正确地向setTimeout定时器函数传递参数,并对比了直接传递与使用匿名函数包裹参数的方法,展示了参数值在异步环境中是如何被捕捉的。
672

被折叠的 条评论
为什么被折叠?



