Javascript


Home / Tài liệu CNTT / Javascript / Javascript tính ngày kết hợp Date Picker plugin ACF WordPress

Javascript tính ngày kết hợp Date Picker plugin ACF WordPress

Hướng dẫn cách tính số ngày trong JavaScript. Bạn sẽ học được cách tính số ngày trong tháng JavaScript cũng như tính khoảng cách giữa 2 ngày trong JavaScript sau bài học này.

Trong javascript không tồn tại phương thức nào trực tiếp giúp chúng ta tính số ngày trong tháng javascript. Tuy nhiên bằng cách ứng dụng các phương thức có sẵn thì chúng ta hoàn toàn có thể tự tạo ra hàm tính số ngày trong tháng javascript.

Ý tưởng ở đây đó là, số ngày trong một tháng chính là ngày cuối cùng của tháng đó. Bằng cách lấy ngày cuối cùng của tháng, chúng ta có thể đơn giản tính ra số ngày trong tháng chỉ định.

Thế nên, chúng ta cần 2 xử lý, một là tạo date instance chứa thông tin ngày cuối cùng trong tháng, và 2 là dùng hàm getDate() trong đối tượng Date để lấy số ngày từ date instance đó.

Và chúng ta viết hàm tính số ngày trong tháng javascript như sau:

  • Ở trên chúng ta dùng hàm new Date với cách viết new Date(year, month, 0) để khai báo ngày cuối cùng trong tháng.

Ví dụ cụ thể, chúng ta tính số ngày trong tháng 2 và tháng 3 bằng JavaScript như sau:

Tính khoảng cách giữa 2 ngày trong javascript

Để tính khoảng cách giữa 2 ngày trong javascript, chúng ta đơn giản chuyển 2 ngày chỉ định về mili giây để tìm hiệu số ngày giữa chúng là xong.

Để chuyển 2 ngày về mili giây, chúng ta sẽ sử dụng tới phương thức getTime mà Kiyoshi đã hướng dẫn trong bài .

Và chúng ta viết hàm tính khoảng cách giữa 2 ngày trong javascript như sau:

  • Ở trên chúng ta chia hiệu của 2 mili giây cho 24*60*60*1000 chính là tổng số mili giây có trong 1 ngày để tìm ra tổng số ngày giữa 2 ngày chỉ định. Và dùng hàm Math.ceil() để làm tròn số ngày tìm được.

Ví dụ cụ thể, nếu một thiên thần sinh vào ngày 8/10/2019, thì chúng ta có thể tính tổng số ngày mà thiên thần ấy đã đến với trái đất này như sau:

Javascript tính ngày kết hợp Date Picker plugin ACF WordPress

Tạo 1 trường event_day trong plugin Advanced Custom Field (ACF) sử dụng hàm get_field() để lấy dữ liệu ngày và hàm json_encode() để chuyển thành dạng chuỗi. Ta có đoạn code trong file .php như sau:

 

Mục Lục