0

我有一个随机测验,为了检查答案,我使用了一个变量。但是,它只是跳到最后并将变量声明为“11”。

aVocab[intCat]= new Array();
aVocab[intCat][0]="FIRST"
aVocab[intCat][1] = new Array()
aVocab[intCat][1][intIncr++]="a"; var celebrity = 1
aVocab[intCat][1][intIncr++]="b"; var celebrity = 2
aVocab[intCat][1][intIncr++]="c"; var celebrity = 3
aVocab[intCat][1][intIncr++]="d"; var celebrity = 4
aVocab[intCat][1][intIncr++]="e"; var celebrity = 5
aVocab[intCat][1][intIncr++]="f"; var celebrity = 6
aVocab[intCat][1][intIncr++]="g"; var celebrity = 7
aVocab[intCat][1][intIncr++]="h"; var celebrity = 8
aVocab[intCat][1][intIncr++]="i"; var celebrity = 9
aVocab[intCat][1][intIncr++]="j"; var celebrity = 10
aVocab[intCat][1][intIncr++]="k"; var celebrity = 11

检查它的警报代码是:

function display_alert()
  {
if (celebrity===1)
  {
  alert("1")
  }
else if (celebrity===2)
  {
  alert("2")
  }
else if (celebrity===3)
  {
  alert("3")
  }
else if (celebrity===4)
  {
  alert("4")
  }
else if (celebrity===5)
  {
  alert("5")
  }
else if (celebrity===6)
  {
  alert("6")
  }
else if (celebrity===7)
  {
  alert("7")
  }
else if (celebrity===8)
  {
  alert("8")
  }
else if (celebrity===9)
  {
  alert("9")
  }
else if (celebrity===10)
  {
  alert("10")
  }
else if (celebrity===11)
  {
  alert("11")
  }
else
  {
  alert("This is for debugging")
  }
  }

我认为这是因为声明了多个变量,但我不知道如何逃避它们。为了消除困惑,我正在为一个学校项目进行名人测验,并希望用它自己的值来定义每个数组。

4

1 回答 1

0

不是答案,只是评论。在您的代码中,您有:

aVocab[intCat]= new Array();
aVocab[intCat][0]="FIRST"
aVocab[intCat][1] = new Array()
aVocab[intCat][1][intIncr++]="a"; var celebrity = 1
aVocab[intCat][1][intIncr++]="b"; var celebrity = 2
...
aVocab[intCat][1][intIncr++]="k"; var celebrity = 11

它多次声明名人并每次分配一个新值。多重声明没有害处,只是多余的。在代码的末尾,名人将具有最后一个分配的值,即11.

我认为这是因为声明了多个变量,但我不知道如何逃避它们

不是多个声明,而是多个赋值。

您没有解释什么是aVocabintCat,也没有说明intIncr是如何初始化的。无论如何,也许 bfavaretto 的评论是关于钱的,你想要某种对象数组。

于 2013-10-30T01:20:44.787 回答