Làm thế nào để có được thời gian ngày trong JavaScript với định dạng 31/12/2010 03:55 AM?Làm thế nào để có được datetime trong JavaScript?
Trả lời
var now = new Date();
now.format ("dd/MM/yyyy hh: mm TT");
có được đầy đủ chi tiết tại đây http://blog.stevenlevithan.com/archives/date-time-format
Tôi đã cố gắng blog này, và thời gian sẽ được hiển thị như 20/50/2011 12:01 TT – nimi
M đã sai. Chuyển đổi phía trên thấp hơn, bạn có phút mà tháng nên được và ngược lại. – Quibblesome
Không chính xác, mm là phút và MM là tháng – Zac
function pad_2(number)
{
return (number < 10 ? '0' : '') + number;
}
function hours(date)
{
var hours = date.getHours();
if(hours > 12)
return hours - 12; // Substract 12 hours when 13:00 and more
return hours;
}
function am_pm(date)
{
if(date.getHours()==0 && date.getMinutes()==0 && date.getSeconds()==0)
return ''; // No AM for MidNight
if(date.getHours()==12 && date.getMinutes()==0 && date.getSeconds()==0)
return ''; // No PM for Noon
if(date.getHours()<12)
return ' AM';
return ' PM';
}
function date_format(date)
{
return pad_2(date.getDate()) + '/' +
pad_2(date.getMonth()+1) + '/' +
(date.getFullYear() + ' ').substring(2) +
pad_2(hours(date)) + ':' +
pad_2(date.getMinutes()) +
am_pm(date);
}
Mã khắc phục như của ngày 03 Tháng 9 '12 lúc 10:11
Kiểm tra công việc của bạn. Tôi đã thử điều này và có "03/06/112 05:02 PM" là đầu ra. Chỉ có điều đúng trong đó là thời gian. Ngày tháng, tháng và (rõ ràng) năm đều không chính xác. – Muhd
Nếu định dạng được "cố định" có nghĩa là bạn không cần phải sử dụng định dạng khác, bạn có thể có JavaScript thuần túy thay vì sử dụng toàn bộ thư viện để định dạng ngày:
//Pad given value to the left with "0"
function AddZero(num) {
return (num >= 0 && num < 10) ? "0" + num : num + "";
}
window.onload = function() {
var now = new Date();
var strDateTime = [[AddZero(now.getDate()),
AddZero(now.getMonth() + 1),
now.getFullYear()].join("/"),
[AddZero(now.getHours()),
AddZero(now.getMinutes())].join(":"),
now.getHours() >= 12 ? "PM" : "AM"].join(" ");
document.getElementById("Console").innerHTML = "Now: " + strDateTime;
};
<div id="Console"></div>
Biến số strDateTime
sẽ giữ ngày/giờ theo định dạng bạn muốn và bạn có thể tinh chỉnh dễ dàng nếu cần.
Tôi đang sử dụng join
làm thực tiễn tốt, không có gì hơn, tốt hơn là thêm chuỗi với nhau.
... và nó hoạt động trong chrome –
@ Jens yep nó về như là tiêu chuẩn càng tốt, khó tin rằng bất kỳ trình duyệt sẽ có cú pháp khác nhau cho các phương pháp ngày/giờ cơ bản. :) –
giải pháp tuyệt vời, cũng để sử dụng định dạng chỉ trao đổi các câu lệnh AddZero (now.getDate()) và AddZero (now.getMonth() + 1) và điều chỉnh giờ là 12 nếu 0 và -12 nếu> 12 . Chúc may mắn và cảm ơn vì giải pháp – Gent
Ngữ nghĩa, có lẽ bạn đang tìm kiếm một liner
new Date().toLocaleString()
mà định dạng ngày trong miền địa phương của người dùng.
Nếu bạn đang thực sự tìm kiếm một cách cụ thể để định dạng ngày, tôi khuyên bạn nên sử dụng thư viện moment.js.
Cảm ơn bạn đã giới thiệu thư viện moment.js; thật tuyệt vơi. – carbontwelve
Không ai nên viết mã ngày/giờ của riêng họ (như trong một số câu trả lời khác). Số lượng các trường hợp góc là đáng kinh ngạc. Hãy xem trang kiểm tra đơn vị cho moment.js (http://momentjs.com/tests/) - có 66701 kiểm tra! Chỉ cần sử dụng nó, nó rất tuyệt. Hoặc tìm một thư viện khác, nhưng không viết mã của riêng bạn cho điều này, bạn sẽ rất có thể bỏ lỡ một cái gì đó (tôi đã sai lầm này lên royally trong quá khứ). – sidewinderguy
Tôi không hiểu tại sao rất khó để tìm một câu trả lời một dòng như thế này mà làm việc. Cảm ơn. – timhc22
Bạn có thể chuyển đổi Ngày sang hầu hết mọi định dạng bằng cách sử dụng Đoạn trích Tôi đã thêm bên dưới.
Code:
dateFormat(new Date(),"dd/mm/yy h:MM TT")
//"20/06/14 6:49 PM"
ví dụ khác
// Can also be used as a standalone function
dateFormat(new Date(), "dddd, mmmm dS, yyyy, h:MM:ss TT");
// Saturday, June 9th, 2007, 5:46:21 PM
dateFormat(new Date(),"dddd d mmmm yyyy")
//Monday 2 June 2014"
Snippet:
Thêm mã sau đây được lấy từ link này vào mã của bạn.
var dateFormat = function() {
var token = /d{1,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|[LloSZ]|"[^"]*"|'[^']*'/g,
timezone = /\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,
timezoneClip = /[^-+\dA-Z]/g,
pad = function (val, len) {
val = String(val);
len = len || 2;
while (val.length < len) val = "0" + val;
return val;
};
// Regexes and supporting functions are cached through closure
return function (date, mask, utc) {
var dF = dateFormat;
// You can't provide utc if you skip other args (use the "UTC:" mask prefix)
if (arguments.length == 1 && Object.prototype.toString.call(date) == "[object String]" && !/\d/.test(date)) {
mask = date;
date = undefined;
}
// Passing date through Date applies Date.parse, if necessary
date = date ? new Date(date) : new Date;
if (isNaN(date)) throw SyntaxError("invalid date");
mask = String(dF.masks[mask] || mask || dF.masks["default"]);
// Allow setting the utc argument via the mask
if (mask.slice(0, 4) == "UTC:") {
mask = mask.slice(4);
utc = true;
}
var _ = utc ? "getUTC" : "get",
d = date[_ + "Date"](),
D = date[_ + "Day"](),
m = date[_ + "Month"](),
y = date[_ + "FullYear"](),
H = date[_ + "Hours"](),
M = date[_ + "Minutes"](),
s = date[_ + "Seconds"](),
L = date[_ + "Milliseconds"](),
o = utc ? 0 : date.getTimezoneOffset(),
flags = {
d: d,
dd: pad(d),
ddd: dF.i18n.dayNames[D],
dddd: dF.i18n.dayNames[D + 7],
m: m + 1,
mm: pad(m + 1),
mmm: dF.i18n.monthNames[m],
mmmm: dF.i18n.monthNames[m + 12],
yy: String(y).slice(2),
yyyy: y,
h: H % 12 || 12,
hh: pad(H % 12 || 12),
H: H,
HH: pad(H),
M: M,
MM: pad(M),
s: s,
ss: pad(s),
l: pad(L, 3),
L: pad(L > 99 ? Math.round(L/10) : L),
t: H < 12 ? "a" : "p",
tt: H < 12 ? "am" : "pm",
T: H < 12 ? "A" : "P",
TT: H < 12 ? "AM" : "PM",
Z: utc ? "UTC" : (String(date).match(timezone) || [""]).pop().replace(timezoneClip, ""),
o: (o > 0 ? "-" : "+") + pad(Math.floor(Math.abs(o)/60) * 100 + Math.abs(o) % 60, 4),
S: ["th", "st", "nd", "rd"][d % 10 > 3 ? 0 : (d % 100 - d % 10 != 10) * d % 10]
};
return mask.replace(token, function ($0) {
return $0 in flags ? flags[$0] : $0.slice(1, $0.length - 1);
});
};
}();
// Some common format strings
dateFormat.masks = {
"default": "ddd mmm dd yyyy HH:MM:ss",
shortDate: "m/d/yy",
mediumDate: "mmm d, yyyy",
longDate: "mmmm d, yyyy",
fullDate: "dddd, mmmm d, yyyy",
shortTime: "h:MM TT",
mediumTime: "h:MM:ss TT",
longTime: "h:MM:ss TT Z",
isoDate: "yyyy-mm-dd",
isoTime: "HH:MM:ss",
isoDateTime: "yyyy-mm-dd'T'HH:MM:ss",
isoUtcDateTime: "UTC:yyyy-mm-dd'T'HH:MM:ss'Z'"
};
// Internationalization strings
dateFormat.i18n = {
dayNames: [
"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat",
"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec",
"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"
]
};
// For convenience...
Date.prototype.format = function (mask, utc) {
return dateFormat(this, mask, utc);
};
@Shadow Mã của thuật sĩ sẽ trả về 02:45 PM thay vì 14:45 PM. Vì vậy, tôi đổi mã của mình một chút:
function getNowDateTimeStr(){
var now = new Date();
var hour = now.getHours() - (now.getHours() >= 12 ? 12 : 0);
return [[AddZero(now.getDate()), AddZero(now.getMonth() + 1), now.getFullYear()].join("/"), [AddZero(hour), AddZero(now.getMinutes())].join(":"), now.getHours() >= 12 ? "PM" : "AM"].join(" ");
}
//Pad given value to the left with "0"
function AddZero(num) {
return (num >= 0 && num < 10) ? "0" + num : num + "";
}
hoạt động như một sự quyến rũ. –
- 1. làm thế nào để có được tên ngày trong datetime trong python
- 2. DateTime để javascript ngày
- 3. Làm thế nào để có được DateTime tháng trong trường hợp trên?
- 4. Làm thế nào để tạo lớp trong C#, có thể được đưa vào DateTime?
- 5. Làm thế nào để có được thời gian và ngày từ tem datetime trong php
- 6. Làm thế nào để có được DateTime vô hiệu hóa trong cơ sở dữ liệu
- 7. Làm thế nào để nhập mô-đun datetime trong Django?
- 8. Làm thế nào để định dạng một DateTime trong PowerShell?
- 9. Làm thế nào để tăng ngày trong datetime? Python
- 10. Làm thế nào để chuyển đổi một datetime trong định dạng CurrentCulture sang Gregorian DateTime?
- 11. Làm thế nào để bạn định dạng một DateTime được hiển thị bởi TextBoxFor() trong MVC3?
- 12. Làm thế nào để chuyển đổi dài kiểu datetime để DateTime với múi giờ đúng
- 13. làm thế nào để chuyển đổi datetime thành ngày ngắn?
- 14. làm thế nào để có được các nút con trong div bằng javascript
- 15. Làm thế nào để có được văn bản nội dung chức năng trong JavaScript?
- 16. javascript/jquery: làm thế nào để có được chiều cao cửa sổ bên trong?
- 17. Javascript: Làm thế nào để có được nhiều trận đấu trong kết quả RegEx .exec
- 18. Làm thế nào để có được các nút nằm bên trong một phạm vi với javascript?
- 19. Làm thế nào để có được một số ra khỏi url này trong javascript regex
- 20. Làm thế nào để có được những đường dẫn tập tin hiện tại trong javascript
- 21. Làm thế nào để có được ngày đầu tiên của năm hiện tại trong javascript?
- 22. Làm thế nào để có được datetime trong định dạng 24hour từ cơ sở dữ liệu oracle?
- 23. Làm thế nào để vượt qua datetime từ xem để điều khiển trong asp.net MVC
- 24. chuỗi để chuyển đổi datetime javascript
- 25. Làm thế nào để chuyển đổi sqldatetime.minvalue thành datetime?
- 26. Làm thế nào để sao chép Joda DateTime?
- 27. Làm thế nào để có được các thông số từ aspx.cs để javascript
- 28. Làm cách nào để chuyển đổi chuỗi thành datetime với định dạng đặc tả trong JavaScript?
- 29. Làm thế nào để thay đổi một trường DateTime khi nó được cập nhật?
- 30. thế nào có được ngày hôm qua và ngày mai datetime trong C#
liên quan: http://stackoverflow.com/questions/1056728/formatting-a-date-in-javascript – Muhd