如何將2016年1月12日像JavaScript中的日期字符串轉換爲2016-01-12 00:00: 00,如何將2016年1月12日像javascript中的日期字符串轉換爲2016-01-12 00:00:00
我在看js的時刻,但似乎沒有選項,我也試過js日期功能,但正在返回無效日期。
任何想法我在這裏失蹤?
如何將2016年1月12日像JavaScript中的日期字符串轉換爲2016-01-12 00:00: 00,如何將2016年1月12日像javascript中的日期字符串轉換爲2016-01-12 00:00:00
我在看js的時刻,但似乎沒有選項,我也試過js日期功能,但正在返回無效日期。
任何想法我在這裏失蹤?
如果你只是想重新格式化字符串,則不要使用日期打擾:
function reformatDateString(ds) {
var months = {jan:'01',feb:'02',mar:'03',apr:'04',may:'05',jun:'06',
jul:'07',aug:'08',sep:'09',oct:'10',nov:'11',dec:'12'};
var b = ds.split('-');
return b[2] + '-' + months[b[1].toLowerCase()] + '-' + b[0] + ' 00:00:00';
}
document.write(reformatDateString('12-Jan-2016'));
但是,如果你真的需要來分析字符串到一個日期,然後單獨做到這一點,格式化字符串:
function parseDMMMY(s) {
var months = {jan:0,feb:1,mar:2,apr:3,may:4,jun:5,
jul:6,aug:7,sep:8,oct:9,nov:10,dec:11};
var b = s.split(/-/);
return new Date(b[2], months[b[1].toLowerCase()], b[0]);
}
document.write(parseDMMMY('16-Jan-2016'));
function formatDate(d) {
function z(n){return ('0'+n).slice(-2)}
return z(d.getDate()) + '-' + z(d.getMonth()+1) + '-' + d.getFullYear() +
' ' + z(d.getHours()) + ':' + z(d.getMinutes()) + ':' + z(d.getSeconds());
}
document.write('<br>' + formatDate(parseDMMMY('16-Jan-2016')));
我認爲這個功能可能會給你你正在尋找的東西。
def parseStringDate(String date,Boolean flagTime=false){
def date
def Format='yyyy-MM-dd'
def datePart=_date.toString().substring(0,10)
if (flagTime){
date = datePart+" "+_date.toString().substring(11,19)
Format=Format+" "+'HH:mm:ss'
}else date = datePart
return [date, Format]
}
可以使用moment parsing功能和format方法:
var dateString = "12-Jan-2016";
var convertedFormat = moment(dateString, "DD-MMM-YYYY").format("YYYY-MM-DD HH:mm:ss");
console.log(convertedFormat);
// this will display: 2016-01-12 00:00:00
請確保Jan
是在你的區域設置有效的月份。
感謝和+1爲您的答覆相同,我會嘗試 – Abhishek
你確定這是JavaScript? – RobG