AngularJS For Loop with Numbers & Ranges

后端 未结 24 3454
抹茶落季
抹茶落季 2020-11-22 13:40

Angular does provide some support for a for loop using numbers within its HTML directives:

do something <
24条回答
  •  礼貌的吻别
    2020-11-22 14:39

    An improvement to @Mormegil's solution

    app.filter('makeRange', function() {
      return function(inp) {
        var range = [+inp[1] && +inp[0] || 0, +inp[1] || +inp[0]];
        var min = Math.min(range[0], range[1]);
        var max = Math.max(range[0], range[1]);
        var result = [];
        for (var i = min; i <= max; i++) result.push(i);
        if (range[0] > range[1]) result.reverse();
        return result;
      };
    });
    

    usage

    
    

    3 2 1 0 -1 -2 -3

    
    

    -3 -2 -1 0 1 2 3

    
    

    0 1 2 3

    
    

    0 -1 -2 -3

提交回复
热议问题