Javascript for循环,if语句没有到达else if语句

时间:2016-03-31 15:42:23

标签: javascript if-statement for-loop

为什么这不会到达其他地方并返回(i + 0)/ 2?另外,为什么警报不会给我i + 0的2位数值? (即:10,20,30,40等。任何帮助将不胜感激。

var key= "OSN0MSA9991UNAAM8ELDPBD9F57BD6PU6BVBN54CDLEGDSUSNS";
var x = 0;
if (key[20] != "P" || key[18] != "P") {
 x = 0;
 for (i=0;i<10;i++) {
  if (key[26] == i) {
   x = i + 0;
   alert(x);
  }
 };
} else if (key[20] == "P") {
 for (i=9;i>-1;i--) {
  if (key[26] == i) {
    x = (i + 0) / 2;
   alert(x);
  }
 };     
};

3 个答案:

答案 0 :(得分:3)

您在key[18]的价值是&#34; L&#34;因此if条件始终为true,您将收到值为7

的提醒

答案 1 :(得分:0)

它没有击中&#34;否则如果&#34;我相信因为你的数组从0开始,并且键[20]实际上是P,所以它总是落入第一个条件而不是点击其他if。编辑:我的错误,误读。您可以提醒键[20]和键[18]以查看它认为这些值是什么。

答案 2 :(得分:0)

您的问题在于key[18]。因为你有一个OR和key[18] = L(因此不是P)..