pagination(200, 2); function pagination(total, current) { var page = []; if (total < 9) { for (var i = 0; i < total; i++) page.push(i); } else if (total - current < 9) { for (var j = total - 9; j < total; j++) page.push(j); } else { var start = current - 4; var end = current + 5; while (start <= 0) end++, start++; // console.log(start, end); while (start < end) { page.push(start); start++; } } console.log(page); }