【问题标题】:Uncaught ReferenceError: x is not defined [closed]未捕获的 ReferenceError:未定义 x [关闭]
【发布时间】:2014-08-04 02:30:24
【问题描述】:

所以 jsLint 说我的 x 没有定义。我到处查找,但找不到如何定义它...

for (x = 0; x < verdachten.length; x++) {
       console.log("De verdachte is de  " + verdachten[x].leeftijd + "jaar oud " + verdachten[x].naam  + ", de " + verdachten[x].wie);
    }

这就是问题所在。 x...

【问题讨论】:

  • 你的意思是像var x;
  • 你需要for (var x = 0; . . .
  • 你太棒了!现在可以了!

标签: javascript undefined jslint


【解决方案1】:

这是 jsLint 过于谨慎的一个例子。大多数浏览器会自动定义 x,但 jsLint 会警告这一点,因为如果您没有正确初始化变量,很容易出现范围错误,如下所示:

for( var x = 0; x < verdachten.length; x++ ) {
  console.log(
    "De verdachte is de " +
    verdachten[x].leeftijd +
    "jaar oud " +
    verdachten[x].naam +
    ", de " +
    verdachten[x].wie
  );
}

如果您在范围内的其他位置定义了x,则可能会出现问题:

function doStuff() {
  var x = "derp";

  // things
  console.log(x); //=> "derp";

  for(x = 0; x < 100; x++) {
    // other things
    console.log(x);//=> 0..99
  }

  console.log(x); //=> 99
  // original x variable has now changed :(
}

【讨论】:

    【解决方案2】:
    for (var x = 0; x < verdachten.length; x++) {
           console.log("De verdachte is de  " + verdachten[x].leeftijd + "jaar oud " + verdachten[x].naam  + ", de " + verdachten[x].wie);
        }
    

    for (var x = 0; x

    您在定义变量“x”时遇到了问题。在 javascript 中,变量由前缀 var 定义,不需要变量类型。

    快乐编程:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-08
      • 2013-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-23
      相关资源
      最近更新 更多