Nodejs Number Iterate upto(t, cb)

Here you can find the source of upto(t, cb)

Method Source Code

// Ruby = 1.upto(5) { |i| puts i }
// JS   = (1).upto(5, function(i){console.log(i);})
Number.prototype.upto = function(t, cb) {
  var i = this;// www  .  j  a  v  a 2s . c om
  if(t < this) return +this;
  while (i <= t) { cb(i++); }
  return +this;
};

Related

  1. downto(down, iterator)
    Number.prototype.downto = function (down, iterator) {
      for (var i = this.valueOf(); i >= down; i--) {
        iterator(i);
      return this.valueOf();
    };
    
  2. iters()
    Number.prototype.iters = function () {
        return [(this for (x of [0])),
                (this for (y of [0]))];
    };
    var [a, b] = (3).iters();
    var three = a.next();
    assertEq(Object.prototype.toString.call(three), '[object Number]');
    assertEq(+three, 3);
    assertEq(b.next(), three);
    ...
    
  3. upto(up, iterator)
    Number.prototype.upto = function (up, iterator) {
      for (var i = this.valueOf(); i <= up; i++) {
        iterator(i);
      return this.valueOf();
    };
    
  4. upto(from)
    Number.prototype.upto = function (from) {
      var a = [];
      var to = this.valueOf();
      var i = to - 1;
      while (i++ < from) {
        a.push(i);
      return a;
    };
    ...
    
  5. upto(t, cb)
    Number.prototype.upto = function (t, cb) {
      var i = this;
      if(t < this) {
        return +this;
      while (i <= t) {
        cb(i++);
      return +this;
    ...
    
  6. downto(t, cb)
    Number.prototype.downto = function (t, cb) {
      var i = this;
      if(t > this) {
        return +this;
      while (i >= t) {
        cb(i--);
      return +this;
    ...
    
  7. downto(t, cb)
    Number.prototype.downto = function(t, cb) {
      var i = this;
      if(t > this) return +this;
      while (i >= t) { cb(i--); }
      return +this;
    };
    
  8. downto(to)
    Number.prototype.downto = function (to) {
      var a = [];
      var from = this.valueOf();
      var i = from + 1;
      while (i-- > to) {
        a.push(i);
      return a;
    };
    ...