javascript - 模块中的返回值返回空?

标签 javascript node.js module npm

我正在尝试创建一个可以实现计时器的模块(解析云代码)。问题是它在最终执行时间返回空值。我认为这与无法检索初始启动变量有关。

我怎样才能做到这一点。谢谢!

var start;
var end;

exports.beginTimer = function beginTimer(functionName) {

    //Start timing now
    var start = new Date().getTime();
}

exports.endTimer = function endTimer(functionName) {

    //End timer
    var end = new Date().getTime();
    var time = end - start;
    alert('Execution time for' + functionName + ': ' + time);
}

最佳答案

您已在每个函数中重新声明了 startend

这会用同名的局部变量掩盖全局变量。

endTimer 获取 undefined 作为 start 的值。

除非您想创建本地范围的变量,否则不要使用 var

关于javascript - 模块中的返回值返回空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33642029/

相关文章:

node.js - NodeJS 应用程序仅继续 6 个打开的连接

javascript - 绑定(bind)到 umd 或 commonjs 时定义全局变量

shell - 使用 Mix 时 Elixir .exs 脚本 "module is not loaded and could not be found"

javascript - 转换流程图,使其以 60 秒的间隔动态更新

javascript - 默认为特定过滤器选项 extjs 4.1.3

javascript - 从 javascript 调用 file.js

javascript - 想要根据下拉框选择显示/隐藏div

JavaScript:是否可以为 'debugger' 起别名?

go.mod 替换指令被忽略

javascript - Node JS Express 包含/导入/导出