JSFiddle - React, Tailwind, and code Playground

JavaScript

/**
 * @param {number} num
 * @return {number[]}
 */
var countBits = function(num) {
    var arr = [0,1,1,2]
    var temp = []
    for (i = 1, range = 100; i < range; i++) {
        arr = arr.concat(temp)
        if (arr.length > num){
        	break;
        }
        temp = arr.map(function (v) {
            return v + 1
        })
    }
    arr.length = num + 1
    return arr
};

var test = countBits(15)
alert(test)