繁体   English   中英

moment.js 为 moment (String, string) 返回无效的日期

[英]moment.js returns invalid Date for moment (String, string)

想要比较时间戳。 尝试了很多方法,但它抛出了一个无效日期错误。 变量startDate /endDate/testDate'DD.MM.YYYY HH:MM:ss' ie '21.12.2021 08:29:00'中返回相同的时间戳格式

var startDate = cy.get('[data-placeholder="Select time range (from)"]').invoke('val')
var endDate = cy.get('[data-placeholder="Select time range (to)"]').invoke('val')
var testDate  = cy.get('td:nth-child(5)>span').invoke('text')

1. moment(startDate ,'DD.MM.YYYY HH:MM:ss' ).format('DD.MM.YYYY HH:MM:ss')  ///  returns Invalid Date 
2.  moment(startDate ,'DD.MM.YYYY HH:MM:ss' ).format('DD.MM.YYYY HH:MM:ss').valueOf() ///  returns Invalid Date
3. moment(startDate ,'DD.MM.YYYY HH:MM:ss' ).format()  ///  returns Invalid Date 
4. moment(startDate ,'DD.MM.YYYY HH:MM:ss' ) ///  returns Invalid Date 

还尝试使用 isBetween() function。 但是对于所有条件,它都将 result 抛出为false

       cy.log( moment(testDate , 'DD.MM.YYYY HH:MM:ss').isBetween(
            (moment(startDate,'DD.MM.YYYY HH:MM:ss')), (moment(endDate,'DD.MM.YYYY HH:MM:ss'))
            ) )

请纠正我。

来自https://momentjs.com/docs/#/parsing/string-format/

momentjs 文档截图

HH:MM:ss MM的 MM 应该是小写字母。 也就是说, moment('21.12.2021 08:29:00', 'DD.MM.YYYY HH:mm:ss')应该可以正常工作。

暂无
暂无

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

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