【问题标题】:Grabbing an element of an array抓取数组的一个元素
【发布时间】:2017-04-23 09:05:37
【问题描述】:
var input = prompt();
var binput = input.split("");
var inputl = input.split(" ").length

if ( inputl % 5 == 0 ) {
    binput.forEach(function(v, i) {
        if (v === "a") {
            binput[i] = "$"
        }
    })
}

我的问题是我只想更改 inputl 的第 5 10 15... 元素,现在它会更改整个文本 if (inputl % 5 == 0)。但是我只想获取inputl 数组的第五个元素。

【问题讨论】:

    标签: javascript if-statement foreach


    【解决方案1】:

    我的问题是我只想要 5th 10th 15th

    试试这个

    binput.forEach(function(v, i) { //iterate once
         if( (i + 1 ) % 5 == 0)  //check if the element is 5th, 10th, 15th etc
         {
             binput[i] = "$"; //assign the value as you like
         }
    }};
    

    编辑:

    如果您还想在分配新值之前检查该值是否为“a”,请尝试

    binput.forEach(function(v, i) { //iterate once
         if( v == "a" && ( (i + 1 ) % 5 == 0 ) )  //check if the element is 5th, 10th, 15th etc
         {
             binput[i] = "$"; //assign the value as you like
         }
    }};
    

    【讨论】:

    • 我认为你搞砸了一些我无法让它工作的东西,这个想法真的很好
    【解决方案2】:
    if ( inputl % 5 == 0 ){    
      binput.forEach(function(v, i) {  
         if( (i + 1 ) % 5 == 0) {    
            if(v === "a") {    
      binput[i] = "$"    
    }}    
    })}    
    

    我得到了它,谢谢你的时间

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-01-10
      • 1970-01-01
      • 1970-01-01
      • 2020-01-23
      • 2010-12-27
      相关资源
      最近更新 更多