Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检查A行并计数,直到它变为B行_Javascript - Fatal编程技术网

Javascript 检查A行并计数,直到它变为B行

Javascript 检查A行并计数,直到它变为B行,javascript,Javascript,如果我的标题有误导性,我很抱歉,如果你不理解我,我真的很抱歉我的英语,它不是我的母语 我会尽我所能更好地解释我试图实现的目标。在过去的两天里,我一直在尝试这样做,我真的需要你的帮助 假设我有一个包含以下数字的数组: 2 4 6 8 10 1 3 5 2 4 我试图数一数一行中有多少个偶数和奇数,当偶数/奇数发生变化时,再数一次。因此,从上面的数组中,我的答案应该是: 5(一行5个偶数)3(一行3个奇数)(一行2个偶数) 此外,当计数没有停止时,它应该发布“”,而不是计数的偶数/赔率,这样它可以在

如果我的标题有误导性,我很抱歉,如果你不理解我,我真的很抱歉我的英语,它不是我的母语

我会尽我所能更好地解释我试图实现的目标。在过去的两天里,我一直在尝试这样做,我真的需要你的帮助

假设我有一个包含以下数字的数组:

2 4 6 8 10 1 3 5 2 4

我试图数一数一行中有多少个偶数和奇数,当偶数/奇数发生变化时,再数一次。因此,从上面的数组中,我的答案应该是:

5(一行5个偶数)3(一行3个奇数)(一行2个偶数)

此外,当计数没有停止时,它应该发布

,而不是计数的偶数/赔率,这样它可以在每行附近显示一次结果

检查此示例图像:

我有一个正在计数的脚本,但它有几个问题:当数字为偶数时,它显示两次计数。接下来,我想不出如何将

添加到这些计数行,并仅在最后一行计数时添加结果。而且我的计数结果应该在顶部,所以脚本应该像我猜的那样从末尾开始计数,当我尝试时,它会启动无限循环

var digits = ["2, 4, 6, 8, 10, 1, 3, 5, 2, 4"]

var evenCount=1, oddCount=1;

for(var i =0; i < digits.length; i++){

if(digits[i] % 2 ==0){

     var oddCount=1;

       $("#res").append(evenCount + " (l) <br>");
      evenCount++;
     }
    else
    var evenCount=1;

       $("#res").append(oddCount + " (n) <br>");
       oddCount++;
}
var数字=[“2,4,6,8,10,1,3,5,2,4”]
变量evenCount=1,oddCount=1;
对于(变量i=0;i”;
evenCount++;
}
其他的
var-evenCount=1;
$(“#res”)。追加(oddCount+”(n)
”; oddCount++; }
检查我的小提琴以查看它的动作:

首先,我认为您的代码显示计数两次,因为您在“for循环”和“else”之后遗漏了两个“{”。在修复代码格式后,我不再看到它计数两次

$(document).ready(function() {
  $("#sub").bind("click", function() {
    $("#res").html("");

    var digits = $('#content').find("span").map(function() {
      return $(this).text();
    });

    var evenCount = 1;
    var oddCount = 1;

    for(var i =0; i < digits.length; i++) {
      if (digits[i] % 2 ==0) {
        oddCount = 1;

        $("#res").append(evenCount + " (l) <br>");
        evenCount++;
      } else {
        evenCount=1;

        $("#res").append(oddCount + " (n) <br>");
        oddCount++;
      }
    }      
  });
});
$(文档).ready(函数(){
$(“#sub”).bind(“单击”,函数(){
$(“#res”).html(“”);
var digits=$('#content').find(“span”).map(函数(){
返回$(this.text();
});
var-evenCount=1;
var-oddCount=1;
对于(变量i=0;i”;
evenCount++;
}否则{
偶数=1;
$(“#res”)。追加(oddCount+”(n)
”; oddCount++; } } }); });
其次,它们有很多实现方法

概念是在偶数/奇数变化后打印计数的数字。然后使用for循环打印x次(计数的数字-1)因此,如果计数的数字是4,则后面将有3个标记。

我们还必须检查当前数字是否是数组中的最后一个数字,并打印计数的数字,否则将跳过最后一个计数的数字

希望这有帮助!:)


Ps.对不起,我的英语不好,也不是我的母语。

海报提示:建议查看与上述代码片段不同的小提琴代码,即忽略代码片段中的数组错误,因为它不会出现在小提琴中。非常感谢,这正是我所需要的!