繁体   English   中英

Javascript for 循环卡在 i = 2 上?

[英]Javascript for loop stuck on i = 2?

我正在为循环编写 javascript 并且它一直卡在 i = 2

 var i;
 for ( i = 0 ; i < $('ul#questions span').length + 1; i++){
  console.log("i",i)
  var id = document.getElementById(i);
  if(i = count){
    $( id ).show();
  }else{
    $( id ).hide();
  }
 }

在此处输入图像描述

i = count替换为i == count

 var i;
 for ( i = 0 ; i < $('ul#questions span').length + 1; i++){
  console.log("i",i)
  var id = document.getElementById(i);
  if(i == count){
    $( id ).show();
  }else{
    $( id ).hide();
  }
 }

您没有执行比较,而是在循环内部分配i ,防止它正确递增。

 var i; for ( i = 0; i < $('ul#questions span').length + 1; i++) { console.log("i",i) var id = document.getElementById(i); if (i == count) { // Comparison instead of assignment $( id ).show(); } else { $( id ).hide(); } }

if (i = count)表示“如果将count分配给i成功...”

为避免无限循环,您应该将其更改为if (i == count)以使您的条件“如果count等于i do ...”

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM