在JavaScript中拆分日期字符串的更好方法是什么

What is the better way to split Date string in JavaScript?

本文关键字:更好 方法 是什么 字符串 日期 JavaScript 拆分      更新时间:2023-09-26

我从api获取xml数据,其中一个xml元素是日期-时间,nodeValue始终采用以下格式-字符串:"YYYY-MM-DD"。(我不能从api请求,以不同的格式返回日期时间

我的问题是将此格式拆分并转换为以下字符串:"DD.MM.YYYY"

基本上我做到了:

var myString = "2015-04-10"; //xml nodeValue from time element
var array = new Array();
//split string and store it into array
array = myString.split('-');
//from array concatenate into new date string format: "DD.MM.YYYY"
var newDate = (array[2] + "." + array[1] + "." + array[0]);
console.log(newDate);

这是jsfiddle:http://jsfiddle.net/wyxvbywf/

现在,这段代码是有效的,但我的问题是:有没有一种方法可以在更少的步骤中获得相同的结果?

应该执行相同的

var newDate = '2015-04-10'.split('-').reverse().join('.')
//                         ^          ^         ^ join to 10.04.2015
//                         |          |reverses (2 -> 0, 1 -> 1, 0 -> 2)
//                         | delivers Array

您可以使用具有捕获组的正则表达式,并使用String.prototype.replace重新格式化它。

var newDate = myString.replace(/('d{4})-('d{2})-('d{2})/, '$3.$2.$1');

是。

var newDate = '2015-04-10'.split('-').reverse().join('.');