如何使用 javascipt 将格式为“dmyyyy”的字符串转换为另一种格式,例如“yyyy-mm-dd”?我试过使用 new Date('9.5.1989')。但它不起作用。
问问题
3028 次
4 回答
2
尝试
new Date('9.5.1989' // your input string
.split(/\./) // split into [9,5,1989]
.reverse() // reverse into [1989,5,9]
.join('/') // join into '1989/5/9', which is valid input for Date
);
于 2012-07-30T10:01:37.627 回答
2
如果您需要将结果作为 astring
而不是 a Date
,则可以尝试以下操作:
var d = new Date('9.5.1989');
var str = d.getFullYear() + "-" + (d.getMonth() + 1 /*months are 0 based */) + "-" + d.getDate();
alert(str);
</p>
于 2012-07-30T10:09:42.357 回答
1
function pad(number, length) {
var str = String(number);
return (str.length >= length) ? str : ( new Array(length - str.length + 1).join('0') ) + str;
}
var pieces = "10.2.2012".split('.');
var wanted = pieces[2] + '-' + pad(pieces[0], 2) + '-' + pad(pieces[1], 2);
之后,结果在wanted
变量中
于 2012-07-30T10:05:55.523 回答
0
尝试下一个代码来获取 Date 对象 var tmp = str.split('.'); var dateObj = new Date(tmp[2], tmp[0], tmp[1]); 然后根据需要对其进行格式化。如果您使用 jquery 库,则可以使用 jQuery dateFormat 插件。
于 2012-07-30T10:17:23.847 回答