我正在使用XML提要并使用JavaScript将其写入HTML。
日期字段包含:
20120319
我想要做的是将其转换为更易读的格式,如:
03/19/2012
在JavaScript中有一种简单的方法吗?
答案 0 :(得分:7)
理想情况下,您应该使用类似“2012-03-19”的区域设置不敏感日期格式,这在全球范围内都是明确的。那说:
var dateStr = "20120319";
var match = dateStr.match(/(\d{4})(\d{2})(\d{2})/);
var betterDateStr = match[2] + '/' + match[3] + '/' + match[1];
会做你想要的。这个硬编码MDY。如果您想要在欧洲大部分地区使用DMY,请交换match[2]
和match[3]
。
如果您希望启发式检测当前区域设置是先选择月份或日期,那么
(new Date('01/02/1970').getDate() === 2)
可以提供帮助。
答案 1 :(得分:6)
一种方法是写:
s = s.replace(/(\d\d\d\d)(\d\d)(\d\d)/g, '$2/$3/$1');
使用正则表达式replace四位数序列,后跟两位数字序列,后跟两位数字序列,第二位数加上/
加上第三,加上/
加上第一个。
答案 2 :(得分:0)
另一种方法是写
var s = String("20181011"); s = s.slice(4,6)+"/"+s.slice(6,8)+"/"+s.slice(0,4)
仅使用String对象。