Skip to main content

Javascript: Date Type

Kiểu dữ liệu Date được định nghĩa trong ECMA Script dựa trên phiên bản đầu tiên của java.util.Date trong Java. Như vậy, kiểu Date lưu trữ số giây được tính từ nửa đêm ngày 1-1-1970 theo giờ UTC.
Để tạo đối tượng kiểu Date, bạn sử dụng cú pháp:
new Date()
new Date(value)
new Date(dateString)//sử dụng ngầm hàm Date.parse()
new Date(year, month, day [, hour, minute, second, millisecond])//sử dụng ngầm hàm Date.UTC()

Parameter:
value
Integer value representing the number of milliseconds since 1 January 1970 00:00:00 UTC (Unix Epoch).
dateString
String value representing a date. The string should be in a format recognized by the parse method (IETF-compliant RFC 2822 timestamps).
year
Integer value representing the year. For compatibility (in order to avoid the Y2K problem), you should always specify the year in full; use 1998, rather than 98.
month
Integer value representing the month, beginning with 0 for January to 11 for December.
day
Integer value representing the day of the month (1-31).
hour
Integer value representing the hour of the day (0-23).
minute
Integer value representing the minute segment (0-59) of a time reading.
second
Integer value representing the second segment (0-59) of a time reading.
millisecond
Integer value representing the millisecond segment (0-999) of a time reading.
Ví dụ:
var independenceDay = new Date(1776, 6, 4); // 4-7-1776
Khi khởi tạo đối tượng Date không tham số, thì đối tượng tạo ra được gán với ngày giờ hiện tại. Khi gán ngày giờ cụ thể, bạn phải truyền số giây đại diện cho ngày giờ đó.
Để tính toán số giây từ 1 ngày giờ cụ thể, bạn sử dụng 1 trong 2 hàm: Date.parse() và Date.UTC()

Hàm Date.parse()

Dưới đây là một số định dạng mà hàm Date.parse() hỗ trợ:
  • month/date/year (vd: 6/13/2004)
  • month_name date, year (vd: January 12, 2004)
  • day_of_week month_name date year hours:minutes:seconds time_zone (vd: Tue May 25 2004 00:00:00 GMT-0700)
  • ISO 8601 extended format YYYY-MM-DDTHH:mm:ss.sssZ (vd: 2004-05-25T00:00:00). Chuẩn ISO 8601 chỉ hỗ trợ trong ECMAScript 5.
Khi tham số truyền vào không hợp lệ, hàm Date.parse trả về kết quả là NaN
Trong trường hợp truyền ngày không hợp lệ, 1 số trình duyệt (như Firefox, Opera…) tự động sửa lại, 1 số khác (như Google Chrome) thì báo Invailid Date.
Ví dụ:
var someDate = new Date(Date.parse("July 11, 1995"));
var wrongdDate = new Date(Date.parse("January 32, 2007"));
Kết quả:
Date {Tue Jul 11 1995 00:00:00 GMT+0700 (SE Asia Standard Time)}
Date {Thu Feb 01 2007 00:00:00 GMT+0700 (SE Asia Standard Time)}

Date.UTC()

Date.UTC(year, month, day[, hours[, minutes[, seconds[,ms]]]])
Lưu ý:
month: tháng được tính từ 0-11
hours: được tính từ 0-23 giờ
    //January 1, 2000 at midnight GMT
    var y2k = new Date(Date.UTC(2000, 0));    
    //May 5, 2005 at 5:55:55 PM GMT
    var allFives = new Date(Date.UTC(2005, 4, 5, 17, 55, 55));

Hiển thị

Javascript chỉ hỗ trợ một số hàm để hiển thị ngày tháng năm: toISOString(), toUTCString()...
Trong Javascript, không có hàm hỗ trợ hiển thị ngày tháng theo format riêng của người dùng.
Ví dụ:
    var today = new Date();
    console.log(today.toISOString());
    console.log(today.toUTCString());
    console.log(today.toDateString());
    console.log(today.toLocaleDateString());
    console.log(today.toString());
Kết quả:
2012-11-02T04:56:55.738Z
Fri, 02 Nov 2012 04:56:55 GMT
Fri Nov 02 2012 
Friday, November 02, 2012 
Fri Nov 02 2012 11:56:55 GMT+0700 (SE Asia Standard Time) 
Nhật ký học tập

Comments

Popular posts from this blog

Lập trình đa luồng với Task

Bài viết được đăng trên Jou Lập trình
Trong phiên bản .NET framework 4.0, Microsoft đã bổ sung nhiều thư viện hỗ trợ việc xử lý đa luồng (multi-threading), nhằm đơn giản hóa việc lập trình lẫn hiệu suất của chương trình. Trong bài viết này, tôi xin hướng dẫn các bạn sử dụng lớp System.Threading.Task.

Tìm hiểu về IdentityServer 4

Trong bài viết này, mình sẽ hướng dẫn các bạn làm quen với thư viện Identity Server 4, và tích hợp các service In-Memory của Identity Server 4 vào Project Web API trong .NET Core.

[ASP.NET MVC] Authentication và Authorize

Một trong những vấn đề bảo mật cơ bản nhất là đảm bảo những người dùng hợp lệ truy cập vào hệ thống. ASP.NET đưa ra 2 khái niệm: Authentication và Authorize
Authentication xác nhận bạn là ai. Ví dụ: Bạn có thể đăng nhập vào hệ thống bằng username và password hoặc bằng ssh.
Authorization xác nhận những gì bạn có thể làm. Ví dụ: Bạn được phép truy cập vào website, đăng thông tin lên diễn đàn nhưng bạn không được phép truy cập vào trang mod và admin.