我需要从我的HTML中调用两次Javascript函数,但我需要在两者之间有一个延迟。当我运行下面的代码时,它几乎立即上传两个文件,即使应该有一个完整的分钟延迟。知道我在这里缺少什么吗?
sendFileToDrive(allFiles1[0]);
setTimeout(sendFileToDrive(allFiles2[0]),60000);
答案 0 :(得分:1)
你需要传递一个函数,而不是执行一个函数。
setTimeout(() => sendFileToDrive(allFiles2[0]), 60000);
现在,传递给setTimeout
的函数将在一分钟后执行,并将执行对setFileToDrive
的调用。
以上使用箭头功能。这是传统语法的一种。
setTimeout(function () { sendFileToDrive(allFiles2[0]) }, 60000);
您也可以使用.bind()
。
setTimeout(sendFileToDrive.bind(this, allFiles2[0]), 60000);
这假设0
的{{1}}索引已包含您需要传递的数据。