Chuẩn hóa mảng trong lịch bằng JavaScript
Trong các bài học trước, bạn hẳn đã tạo ra một mảng các số từ 1 đến ngày cuối cùng của tháng:
let arr = range(getLastDay(year, month));
Bạn cũng có số thứ tự của ngày trong tuần cho ngày đầu tiên của tháng và cho ngày cuối cùng:
let firstWeekDay = getFirstWeekDay(year, month);
let lastWeekDay = getLastWeekDay(year, month);
Bây giờ chúng ta sẽ bổ sung mảng của mình với các chuỗi trống ở bên phải và bên trái. Hãy tạo một hàm normalize cho việc này, tham số đầu tiên nhận mảng, tham số thứ hai - bao nhiêu chuỗi trống cần thêm vào bên trái, và tham số thứ ba - bao nhiêu chuỗi trống ở bên phải:
function normalize(arr, left, right) {
}
Nhắc lại rằng chúng ta cần thêm firstWeekDay phần tử trống ở bên trái, và ở bên phải - 6 trừ đi lastWeekDay phần tử. Nghĩa là chúng ta sẽ sử dụng hàm normalize của chúng ta như thế này:
let res = normalize(arr, firstWeekDay, 6 - lastWeekDay);
console.log(res);
Hãy triển khai hàm normalize đã mô tả và kiểm tra hoạt động của nó.