【问题标题】:javascript for array comparison statement数组比较语句的javascript
【发布时间】:2026-02-21 12:30:02
【问题描述】:

我正在尝试将 array1 与 array2 项目进行比较。 如果数组(位置 1)> 数组(位置 1)返回为 A (+1) 如果数组(位置 1)

const X= [5,8,7,8];
const Y= [3,6,10,10];
for (var i=0; i < X.length;i++){
   if(x[i] > y[i]) {
      return A++;
   }
   else if (x[i] < y[i]) {
   let B=0
  return B++;
   }
    console.log([A] +[b]);
}

【问题讨论】:

  • Java?你确定?

标签: javascript arrays for-loop if-statement


【解决方案1】:

只需添加一个 A 和 B 变量,并使其具有默认值 0。不要使用 return A++; AND return B++ 使用 A++; AND B++ 并在您的 console.log 中使用 A 和 B 即可。不需要像这样的[]

<script>
    const X= [5,8,7,8];
    const Y= [3,6,10,10];
    var A = 0;
    var B = 0;

    for (var i = 0; i < X.length; i++) {
        if(X[i] > Y[i]){
            A++;
        }else if(X[i] < Y[i]){
            B++;
        }
    }

    console.log(A);
    console.log(B);
    console.log(A+B);
</script>

虽然我仍然无法理解你为什么将 A 和 B 相加而不是比较它们。

【讨论】:

  • 关于你的最后一点:我认为他们使用“+”代替逗号。这也解释了他们使用方括号来实际停止添加的值。对于提问者,只需使用console.log(a,b); 输出两者即可。
【解决方案2】:

当在循环中遇到返回时,控制退出循环,即循环中断。

还要检查你的变量名。 (b -> B, x -> X, y -> Y)

console.log([A] + [B]) 必须在 for 循环之外,如果您正在寻找最终结果。

我不确定,你为什么要“让 B=0”。

console.log([A] +[B]) 为您提供 22(将数字转换为字符串并附加它们)作为答案,而 console.log(A +B) 为您提供 4(数字相加)作为答案。我把两者都包括在内了。

希望这会有所帮助。

const X= [5,8,7,8];
const Y= [3,6,10,10];
A=0;
B=0;
for (var i=0; i < X.length;i++){
   if(X[i] > Y[i]) {
     A++;
   }
   else if (X[i] < Y[i]) {
     B++;
   }
}
console.log([A] +[B]);
console.log(A + B);

【讨论】: