How to find the max/min of a nested array in javascript?

前端 未结 6 1606
情歌与酒
情歌与酒 2020-12-08 01:04

I want to find the maximum of a nested array, something like this:

a = [[1,2],[20,3]]
d3.max(d3.max(a)) // 20

but my array contains a text

6条回答
  •  谎友^
    谎友^ (楼主)
    2020-12-08 01:24

    If you now exactly what columns you want to test, you can use:

    var columns = ["ColumnA", "ColumnB", "ColumnC"];
    
    var max = selectedMax(columns,dataset);
    var min = selectedMin(columns,dataset)
    
    function selectedMax(columns, dataset) {
        var max;
        columns.forEach(function(element, index, array) {
            var tmpmax = d3.max(dataset, function(d) {
                return +d[element];
            });       
            max = (tmpmax > max || max === undefined) ? tmpmax : max;
        });
        return max;
    }
    
    function selectedMin(columns, dataset) {
        var min;
        columns.forEach(function(element, index, array) {
            var tmpmin = d3.min(dataset, function(d) {
                return +d[element];
            });
            min = (tmpmin < min || min === undefined) ? tmpmin : min;
        });  
    return min;
    }
    

提交回复
热议问题