使用javascript转换日期时间格式的最佳方法是什么?
我有这个......“2015-08-06T00:39:08Z” 并希望将其更改为
“06/08/2015 12:39 pm”
答案 0 :(得分:1)
您可以通过实例化Date对象来手动完成:
var d = new Date('2015-08-06T00:39:08Z');
然后使用Date方法(如getDay
或getUTCFullYear
)获取所需信息并构建格式化字符串。
或者,如果您不介意依赖库,则可以使用提供了大量方法的http://momentjs.com/,尤其是format
方法:http://momentjs.com/docs/#/displaying/format/
// Example with moment.js
var formattedDate = moment('2015-08-06T00:39:08Z').format("MM/DD/YYYY hh:mma");
alert(formattedDate);
答案 1 :(得分:1)
使用newDate()方法,然后使用Date Get Methods。 w3Schools上解释了一些例子
方法说明
getDate() Get the day as a number (1-31)
getDay() Get the weekday as a number (0-6)
getFullYear() Get the four digit year (yyyy)
getHours() Get the hour (0-23)
getMilliseconds() Get the milliseconds (0-999)
getMinutes() Get the minutes (0-59)
getMonth() Get the month (0-11)
getSeconds() Get the seconds (0-59)
getTime() Get the time (milliseconds since January 1, 1970)
答案 2 :(得分:1)
使用纯javascript:
代码:
function formatDate(input) {
var datePart = input.match(/\d+/g),
year = datePart[0], // get only two digits
month = datePart[1],
day = datePart[2];
var h = parseInt(input.substr(input.indexOf("T") + 1, 2));
var m = parseInt(input.substr(input.indexOf(":") + 1, 2));
var dd = "AM";
if (h >= 12) {
h = hh - 12;
dd = "PM";
}
if (h == 0) {
h = 12;
}
m = m < 10 ? "0" + m : m;
alert(day + '/' + month + '/' + year + ' ' + h.toString() + ':' + m.toString() + dd);
}
formatDate('2015-08-06T00:39:08Z'); // "18/01/10"