代码之家  ›  专栏  ›  技术社区  ›  Varun Sukheja

对字符数组使用array.reduce()。

  •  1
  • Varun Sukheja  · 技术社区  · 6 年前

    我有一个字符数组(arr)和一个字符串(j),我想使用 array.reduce() 方法计算字符串j中存在的数组(arr)的字符数。

    下面的代码显示了我如何使用array.reduce()方法,

    let val = arr.reduce((count , ch) => {
        return J.includes(ch) ? count + 1 : count
    });
    

    但当我尝试使用样本值时,

    arr = ​​​​​[ 'a', 'A', 'A', 'S', 'S' ]​​​​​;
    
    J = 'aA';
    

    我知道答案是

    val = 'a11'
    
    1 回复  |  直到 6 年前
        1
  •  6
  •   Mohammad DefenestrationDay    6 年前

    你需要添加 initialValue 在的第二个参数中 .reduce() 如中所述 docs

    arr.reduce(callback[, initialValue])
    

    var arr = [ 'a', 'A', 'A', 'S', 'S' ];
    var J = 'aA';
    let val = arr.reduce((count , ch) => {
        return J.includes(ch) ? count + 1 : count
    }, 0);
    console.log(val);