BASIC TO ADVANCE

Bài 24: Đối tượng date trong javascript

Bài này, chúng ta sẽ tìm hiểu về đối tượng date trong javascript. Một đối tượng được dùng rất là nhiều trên các trang web.

1, Đối tượng date trong javascript.

-Đối tượng date trong javascript là nơi xử lý các vấn đề về thời gian.

-Để khởi tạo đối tượng date trong javascript chúng ta có 4 cách:

+ Khởi tạo ngày giờ tại thời điểm hiện tại:

new Date();

Xem ví dụ

+Khởi tạo ngày giờ từ giá trị time millisecond:

new Date(milliseconds);

Trong đó: milliseconds là thời gian chúng ta muốn khởi tạo đơn vị mili giây.

Xem ví dụ

+Khởi tạo ngày giờ từ một dateString:

new Date(dateString);

Trong đó: dateString có dạng "tháng ngày, năm giờ:phút:giây" trong đó tháng là tên tiếng anh. VD: April 06, 2017 12:00:00.

Xem ví dụ

+Khởi tạo ngày giờ từ một date string dạng atrribute:

new Date(year, month, day, hours, minutes, seconds, milliseconds)

Trong đó:

  • year là năm.
  • month là tháng.
  • hours là giờ.
  • minutes là phút.
  • seconds là giây.
  • milliseconds là mili giây.

Xem ví dụ

2, Các Phương thức của Date.

Các phương thức get dữ liệu

  • getDate() trả về ngày trong tháng (1 - 31).
  • getDay() trả về ngày trong tuần (0-6), với chủ nhật là 0, thứ 2 là 1, thứ 3 là 2 ,...
  • getMonth() trả về tháng trong năm (0 - 11).
  • getFullYear() trả về năm dạng đầy đủ (YYYY).
  • getHours() trả về số giờ dạng 24h (0 - 23).
  • getMinutes() trả về phút trong giờ (0 - 59).
  • getSeconds() trả về số giây trong phút (0 - 59).
  • getMilliSeconds() trả về tích tắc trong giây (0 - 999).
  • getTime() Trả về thời gian dạng mili giây.

VD:

function get() {
    var date = new Date();
    var data = 'Ngày trong tháng: ' + date.getDate() + '<br />';
    data += 'Ngày trong tuần: ' + date.getDay() + '<br />';
    data += 'Tháng trong năm: ' + date.getMonth() + '<br />';
    data += 'Năm đầy đủ: ' + date.getFullYear() + '<br />';
    data += 'Giờ: ' + date.getHours() + '<br />';
    data += 'Phút: ' + date.getMinutes() + '<br />';
    data += 'Giây: ' + date.getSeconds() + '<br />';
    data += 'Mili Giây: ' + date.getMilliseconds() + '<br />';
    data += 'Time dạng mili giây: ' + date.getTime() + '<br />';
    document.getElementById('result').innerHTML = data;
}

Xem Kết Quả

-Tương tự chúng ta cũng có các Hàm lấy ra thời gian dạng UTC.

VD:

function get() {
    var date = new Date();
    var data = 'Ngày trong tháng: ' + date.getUTCDate() + '<br />';
    data += 'Ngày trong tuần: ' + date.getUTCDay() + '<br />';
    data += 'Tháng trong năm: ' + date.getUTCMonth() + '<br />';
    data += 'Năm đầy đủ: ' + date.getUTCFullYear() + '<br />';
    data += 'Giờ: ' + date.getUTCHours() + '<br />';
    data += 'Phút: ' + date.getUTCMinutes() + '<br />';
    data += 'Giây: ' + date.getUTCSeconds() + '<br />';
    data += 'Mili Giây: ' + date.getUTCMilliseconds() + '<br />';
    document.getElementById('result').innerHTML = data;
}

Xem Kết Quả

Các phương thức set

  • setDate(x) thiết lập ngày trong tháng (1 - 31).
  • setMonth(x) thiết lập tháng trong năm (0 - 11).
  • setFullYear(x) thiết lập năm dạng đầy đủ (YYYY).
  • setHours(x) thiết lập số giờ dạng 24h (0 - 23).
  • setMinutes(x) thiết lập phút trong giờ (0 - 59).
  • setSeconds(x) thiết lập số giây trong phút (0 - 59).
  • setMilliSeconds(x) thiết lập tích tắc trong giây (0 - 999).
  • setTime(x) thiết lập thời gian dạng mili giây.

VD:

function set() {
    var date = new Date();
    date.setDate(06);
    date.setMonth(04);
    date.setFullYear(2017);
    date.setHours(15);
    date.setMinutes(05);
    date.setSeconds(10)
    date.setMilliseconds(120);
}

Xem Kết Quả

-Và tương tự chúng ta cũng có các set dạng UTC.

VD:

function set() {
    var date = new Date();
    date.setUTCDate(06);
    date.setUTCMonth(04);
    date.setUTCFullYear(2017);
    date.setUTCHours(15);
    date.setUTCMinutes(05);
    date.setUTCSeconds(5);
    date.setUTCMilliseconds(120);
}

Xem Kết Quả

Các phương thức khác.

-Bên cạnh các hàm get và set thì đối tượng date còn hỗ trợ chúng ta các phương thức:

  • toDateString() chuyển đổi thời gian về dạng date string.
  • toISOString() chuyển đổi thời gian về dạng ISO (YYYY-MM-DDTHH:mm:ss.sssZ).
  • toJSON() chuyển đổi thời gian về dạng JSON (YYYY-MM-DDTHH:mm:ss.sssZ).
  • toLocaleDateString() chuyển đổi về ngày theo chuyển địa phương.
  • toLocaleTimeString() chuyển đổi về giờ theo chuyển địa phương.
  • toString() chuyển đổi thơi gian về dạng string.
  • valueOf() chuyển đổi thời gian về dạng nguyên thủy.

VD:

function get() {
    var date = new Date();
    var data = 'toDateString(): ' + date.toDateString() + '<br />';
    data += 'toISOString(): ' + date.toISOString() + '<br />';
    data += 'toJSON(): ' + date.toJSON() + '<br />';
    data += 'toLocaleDateString(): ' + date.toLocaleDateString() + '<br />';
    data += 'toLocaleTimeString(): ' + date.toLocaleTimeString() + '<br />';
    data += 'toString(): ' + date.toString() + '<br />';
    data += 'valueOf(): ' + date.valueOf() + '<br />';
    document.getElementById('result').innerHTML = data;
}

Xem Kết Quả

3, Lời kết.

-Ngoài các phương thức trên thì có còn một số phương thức khác rất ít khi dùng mà mình không nhắc đến ở trên. Các bạn cần có thể tự tìm hiểu thêm nhé!

Đăng ký nhận tin.

Chúng tôi chỉ gửi tối đa 2 lần trên 1 tháng. Tuyên bố không spam mail!

Vũ Thanh Tài

About author
The best way to learn is to share
Xem tất cả bài đăng

6 Comments

Chào bạn!

Bài viết rất bổ ích

bạn cho mình thêm đoạn code như thế này bằng script được không???

Thời gian từ 7-10 giờ sáng chạy sự kiện A

Thời gian từ 10-14 giờ chạy sự kiện B

Từ 14 - 20 giờ chạy sự kiện C

Mong được giúp đỡ 

cảm ơn

Tony Nguyen

10 tháng trước

Đây bạn!

var currentTime = new Date().getHours();

if (7 <= currentTime  && currentTime < 10) {
    // do something
} else if (10 <= currentTime && currentTime < 14) {
    // do something
} else if (14 <= currentTime && currentTime <= 20) {
    // do something
}

 

Vũ Thanh Tài

10 tháng trước

Cảm ơn bạn rất nhiều 

mình làm được rồi

Tony Nguyen

10 tháng trước

Bình luận không được

Tony Nguyen

10 tháng trước

Làm sao để chuyển thời gian đưa vào localStorage về lại đối tượng ạ.Em mới học chưa rành lắm

Huy Trương

5 tháng trước

Chuyển thời gian từ dạng JSON về dạng thường thì làm thế nào ạ

Huy Trương

5 tháng trước

Bình luận

Captcha