3

我有一些js代码;在那里我运行了 js lint。我有这个错误:

'currentApple' 已经定义

我是否需要删除 varcurrentApple才能else使其工作?

我在下面提供我的代码:

if(appleTab == Lifeline){
    var currentApple = appleWorklist.getcurrentAppleTime("currentAppointmentcurrentAppleTime");
    fo.allApples = currentApple;
}
else
{
    var currentApple = appleWorklist.getcurrentAppleTime("CalendarcurrentAppointmentcurrentAppleTime");
    fo.allApples = currentApple;
}
4

2 回答 2

4
var currentApple;
if (appleTab == Lifeline) {
    currentApple = /* etc. */
于 2013-09-20T16:14:16.173 回答
2

javascript中没有blockscope,所以currentApple在你的代码片段中基本上是一样的。

来自 Douglas Crockford的圣经,段落变量:

JavaScript 没有块作用域,因此在块中定义变量可能会使熟悉其他 C 系列语言的程序员感到困惑。在函数顶部定义所有变量。

只需在函数开头使用 var 语句声明每个使用的变量一次。

于 2013-09-20T16:14:18.990 回答