删除两个函数使用的全局变量
Remove a global variable used by two functions
我在库文件中有这两个函数。一个启动倒数计时器,另一个停止它。为了能够停止它,我需要 timeInterval 的引用,因此必须使其全局化。当然这不是正确的方法。如果这些功能位于单独的实用程序文件中,则应如何处理?谢谢。
var timeInterval;
exports.stopTimer = function() {
clearInterval(timeInterval);
};
exports.startTimer = function(duration, interval, displayElem, cbFinished, cbInterval) {
var timer = duration * 60,
interval = interval * 60,
minutes,
seconds;
timeInterval = setInterval(function() {
minutes = parseInt(timer / 60, 10);
seconds = parseInt(timer % 60, 10);
minutes = minutes < 10 ? "0" + minutes : minutes;
seconds = seconds < 10 ? "0" + seconds : seconds;
displayElem.text = minutes + ":" + seconds;
if (--timer < 0) {
clearInterval(timeInterval);
if (cbFinished) {
cbFinished();
}
}
if (timer == interval) {
if (cbInterval) {
cbInterval();
}
}
}, 1000);
};
使startTimer
返回一个间隔,stopTimer
参数中获取一个间隔。
实用工具.js
exports.startTimer = function (...) {
return setInterval(function () {
...
}, 1000);
};
exports.stopTimer = function (interval) {
clearInterval(interval);
};
傅.js
var utils = require('./utils');
var timer = utils.startTimer();
utils.stopTimer(timer);
相关文章:
- 在javascript函数中设置全局变量
- 如何从onclick函数设置全局变量并将其传递给另一个JS文件
- 创建要在其他函数中使用的全局变量
- 函数中的innerHTML(全局变量?)
- 全局变量只能由第一个函数访问
- 匿名自执行js函数内部的全局变量在外部仍然可用
- 更改函数内部的全局变量而不调用它
- 如何制作全局javascript函数和变量
- 改进js代码以删除全局变量和函数
- 调用函数后如何重置全局变量
- 无法在函数中检索全局变量的值
- 将全局变量传递给自调用函数或“IIFE”的目的
- 保留 JQuery Vars 用于另一个函数(全局变量?)
- 如何在 ajax 调用后更改包装器 JavaScript 函数中的全局变量
- 删除两个函数使用的全局变量
- 如何将socket.on中函数的值保存为全局变量
- angular/javascript无法识别函数内部的全局变量
- Javascript测试存根全局变量函数
- 在JavaScript中添加一个全局变量/函数(特别是NativeScript)
- Javascript从本地向全局变量函数添加行