我将如何转换以下日期:
2016 年 2 月 18 日星期四 12:25:00 SGT
转换成“2016-02-18”这样的格式?
I know,
- 通过调用使用 new Date(Date.parse('...')) 可以帮助我得到它。但问题是时区部分(SGT)。
- 我不想使用任何图书馆。
解决这个问题的有效方法是什么?
任何帮助表示赞赏!
PS:
好的,我已经尝试过
new Date(Date.parse('Thu Feb 18 12:25:00 SGT 2016'))
但当然,这会给我带来“无效日期”错误。
我想我应该等你发布一些代码,但这里有一个例子。它将字符串拆分为多个部分,将月份名称转换为数字,然后按照所需的顺序输出所需的位。月份名称上的切片只是为了防止您想使用完整的月份名称,但也许这是不必要的:
function reformatDate(s){
var b = s.split(/[\s:]/);
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'};
return b[7] + '/' + months[b[1].toLowerCase().slice(0,3)] + '/' + ('0'+b[2]).slice(-2);
}
document.write(reformatDate('Thu Feb 18 12:25:00 SGT 2016'));
该格式日期字符串(y/m/d)与我所知道的任何标准都不一致,并且大多数浏览器可能不会解析。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)