如何在JavaScript中将dd.mm.yyyy格式日期转换为yyyy-mm-dd格式?
这是一个例子:
30.01.2010
to
2010-01-30
Run Code Online (Sandbox Code Playgroud)
意思是将dmY转换为Ymd.我知道如何在PHP中执行此操作,但我需要在JavaScript中使用它.
ash*_*int 18
你可以很简单地做到这一点.只需将欧洲日期拆分为一个数组,然后将其反转,然后用破折号加入它.
var euro_date = '30.01.2010';
euro_date = euro_date.split('.');
var us_date = euro_date.reverse().join('-');
Run Code Online (Sandbox Code Playgroud)
Datejs可以解析它.代码位于http://datejs.googlecode.com/files/date.js
编辑:这是不是安全离开date.js自动确定格式字符串.我错了一天<= 12(duh)没有测试.你应该使用:
Date.parseExact('09.01.2010', 'd.M.yyyy').toString('yyyy-MM-dd');
Run Code Online (Sandbox Code Playgroud)
要么
Date.parseExact('09.01.2010', 'dd.MM.yyyy').toString('yyyy-MM-dd');
Run Code Online (Sandbox Code Playgroud)
取决于您是否要允许单位数天.
如果你只需要这样做,Datejs有点臃肿.您可以使用split()并连接结果:
var eu_date = '30.01.2010';
var parts = eu_date.split('.');
var us_date = parts[2]+'-'+parts[1]+'-'+parts[0];
Run Code Online (Sandbox Code Playgroud)
对于不需要日期逻辑的这类转换,通常最聪明的就是使用字符串操作工具.