JSFiddle - React, Tailwind, and code Playground

JavaScript

"use strict";
function sequence(start = 0, step = 1) {
	start = start - step;
	return function (){
		start = start + step;
		return start;

	};
}
  	"use strict";
	var generator = sequence(10, 3);
	var generator2 = sequence(7, 1);
    var generator3 = sequence(3);
    var generator4 = sequence();
    document.write(generator() + '<br>');  // 10
    document.write(generator() + '<br>');  // 12

    document.write(generator2() + '<br>');  // 7

    document.write(generator() + '<br>');  // 16

    document.write(generator2() + '<br>');  // 8

    document.write(generator3() + '<br>'); //3
    document.write(generator3() + '<br>'); //4
    document.write(generator3() + '<br>'); //5
    document.write(generator3() + '<br>'); //6

    document.write(generator4() + '<br>'); //0
    document.write(generator4() + '<br>'); //1
    document.write(generator4() + '<br>'); //2
    document.write(generator4() + '<br>'); //3
    document.write(generator4() + '<br>'); //4