JavaScript に関するいくつかのトピック

関数: mn 間のランダムな整数を取得します。


function randomNumber(min, max) {
    
    

    if (min >= max) {
    
    
        return NaN;
    }

    return parseInt(Math.random() * (max - min + 1) + min);

}

配列: 各要素の出現数を調べます。

    let arr = ['a', 'b', 'c', 'a', 'c', 'd', 'e', 'm', 'd'];
    let res = arr.reduce((pre, val) => {
    
    
        pre[val] =  (pre[val]) ? pre[val] + 1 : 1; 
        return pre;
    }, {
    
    })
    console.log(res);
    let res = arr.reduce((pre, val) => {
    
    

        if (!pre[val]) {
    
    
            pre[val] = 1;
        } else {
    
    
            pre[val]++;
        }
        return pre;

    }, {
    
    })//第二个参数给pre做默认值
    console.log(res);

配列の平坦化

  let arr = [[1, 2], [3, 4], [5, 6]]; // [1, 2, 3, 4, 5, 6]

    let arr2 = arr.reduce((pre, val) => {
    
    
        return pre.concat(val);
    }, []);

    console.log(arr2);
  let arr = [[1, 2], [3, 4], [5, [6, 7]]];
    // [5, [6, 7]]  [5,6,7]
    // [6, 7]

    let arr2 = function(arr) {
    
    
        return arr.reduce((pre, val) => pre.concat(Array.isArray(val) ? arr2(val) : val), []);
    }

    console.log(arr2(arr));

おすすめ

転載: blog.csdn.net/weixin_45753588/article/details/124483842