Một API phân trang tốt thường trả kèm metadata để client biết trạng thái. Cho mảng items, page (từ 1), perPage, hãy in ra một object JSON gồm:
total: tổng số phần tửpage: trang hiện tạiperPage: số phần tử mỗi trangtotalPages: tổng số trang (ceil(total/perPage))hasNext: còn trang sau không (boolean)hasPrev: còn trang trước không (boolean)data: mảng phần tử của trang hiện tạiitems=[1,2,3,4,5], page=1, perPage=2 → totalPages=3, hasNext=true, hasPrev=false, data=[1,2].
Dòng 1: JSON mảng items.
Dòng 2: số nguyên page.
Dòng 3: số nguyên perPage.
0 ≤ độ dài items ≤ 1000; 1 ≤ page; 1 ≤ perPage ≤ 1000.
In ra một object JSON với các khóa theo đúng thứ tự: total, page, perPage, totalPages, hasNext, hasPrev, data.
Ví dụ:
Đầu vào:
[1,2,3,4,5]
1
2
Đầu ra:
{"total":5,"page":1,"perPage":2,"totalPages":3,"hasNext":true,"hasPrev":false,"data":[1,2]}Giải thích:
Đang tải editor...