函数中的var作为javascript中另一个函数的参数
我使用javascript,在函数中包装var时遇到了问题 代码如下:函数中的var作为javascript中另一个函数的参数,javascript,function,var,Javascript,Function,Var,我使用javascript,在函数中包装var时遇到了问题 代码如下: function submitData() { let s = dataSaveParam(); if (s != '') { popupConfirm('sure you want to submit?', function() { saveDataToDB(s); }); } } submitData()运行两次。第一次,dataSaveP
function submitData() {
let s = dataSaveParam();
if (s != '') {
popupConfirm('sure you want to submit?', function() {
saveDataToDB(s);
});
}
}
submitData()
运行两次。第一次,dataSaveParam()
返回1,第二次返回2从
saveDataToDB()
中获取的s
的值始终为1,这意味着s
保持不变。不,您发布的代码中的闭包很好,s
不是全局共享变量。但是可能在dataSaveParam
或popupConfirm
或saveDataToDB
中有缺陷。我同意Bergi的观点。在看不到其他函数的情况下无法判断问题所在。问题可能出在dataSaveParam()
尝试console.log
中,并检查它是否始终是1或2个天才!我刚才检查了一下,在我的函数popupConfirm中发现了一个愚蠢的错误。现在它工作得很好。再次感谢你的帮助!谢谢你们所有人!这确实是popupConfirm而不是闭包的问题