繁体   English   中英

如何在js中将MM/dd/yyyy HH:mm:ss zzz格式的字符串转换为日期

[英]How to convert string of MM/dd/yyyy HH:mm:ss zzz format to date in js

我想用 moment.js 或任何其他库转换固定格式MM/dd/yyyy HH:mm:ss zzz的字符串,然后再进行比较。 我以 moment.js 为例,但即使我删除了模式,它似乎也无法识别zzz模式,对话isAfter无论如何看起来都不正确。

var x = moment('12/30/2014 16:26:31 MSK', "MM/dd/yyyy HH:mm:ss zzz");
var y = moment('12/31/2014 06:46:23 MSK', "MM/dd/yyyy HH:mm:ss zzz");

console.log(x.isValid()); // false
console.log(y.isValid()); // false
console.log(x.isAfter(y)); // false
console.log(x.isBefore(y)); // false
console.log(x.isSame(y)); // false
  
var xWithoutZZZ = moment('12/30/2014 16:26:31', "MM/dd/yyyy HH:mm:ss");
var yWithoutZZZ = moment('12/31/2014 06:46:23', "MM/dd/yyyy HH:mm:ss");
  
console.log(xWithoutZZZ.isValid()); // true
console.log(yWithoutZZZ.isValid()); // true
console.log(xWithoutZZZ.isAfter(yWithoutZZZ)); // true ???? WTF WHY
console.log(xWithoutZZZ.isBefore(yWithoutZZZ)); // false
console.log(xWithoutZZZ.isSame(yWithoutZZZ)); // false

请告知解决此问题的方法https://jsfiddle.net/yjqsb754/

Momemnt js不支持ZZZ,直接把这部分从字符串中去掉就可以正常使用了

var x = moment(x.substring(0, x.lastIndexOf(' '));
var y = moment(y.substring(0, y.lastIndexOf(' '));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM