Nếu bạn đại diện cho ngày theo lịch, không có thời gian hoặc múi giờ. Các đại diện ngắn có ý nghĩa hơn.
Thật không may, ngày (chuỗi) mới trong nhiều triển khai javascript có thể làm bad things cho bạn.
new Date('2015-09-23')
Tue Sep 22 2015 20:00:00 GMT-0400 (Eastern Daylight Time)
Cách đơn giản nhất là không sử dụng Ngày của javascript - loại này khớp với DateTimeOffset bằng các ngôn ngữ khác. Đó là cách xấu để biểu thị các giá trị ngày của lịch.
Nhưng, có thể bạn sẽ sử dụng ngày của javascript. "Sửa lỗi" đơn giản tiếp theo là tránh các biểu diễn tiêu chuẩn (vì các biểu diễn tiêu chuẩn được diễn giải là DateTimeOffset với UTC). Dưới đây là hai khả năng:
Sử dụng "/" thay vì "-".
new Date('2015/09/23')
Wed Sep 23 2015 00:00:00 GMT-0400 (Eastern Daylight Time)
Sử dụng tháng có 3 chữ số - số 0 hàng đầu sẽ bị hủy.
new Date('2015-009-23')
Wed Sep 23 2015 00:00:00 GMT-0400 (Eastern Daylight Time)
Nếu bạn có javascript trên cả máy khách và phía máy chủ, bạn đã hoàn tất. Nếu bạn có thứ gì khác ở phía máy chủ, bạn nên xem xét ngôn ngữ máy chủ sẽ làm gì nếu nó thấy định dạng ngày không chuẩn đến.
Nguồn
2015-09-23 14:21:28
Âm thanh hợp lý với tôi. –
Có vấn đề này quá. Tạo bảng người dùng với cột sinh nhật, loại ngày. Vì vậy, nó chỉ nên có ngày (không có thời gian). Nhận thời gian khi truy vấn với các nút postgres. – Kiddo