草庐IT

MomentJS

全部标签

javascript - moment.js isAfter 性能

我已将我的日期转换为moment.js,现在我想将它与另一个日期(在本例中为“现在”)进行比较。与日期对象进行简单比较似乎比使用moment.jsisAfter函数快很多。这种简单的比较是否适用于所有语言环境?我是不是漏掉了什么?当isAfter是一个Date对象时,isAfter似乎创建了一个新的moment对象而不是走捷径,这有什么非常具体的原因吗?我所有的日期都是UTC。functionexecuteTests(){isAfterTest();compareTest();}functionisAfterTest(){console.time('isAfterTest');varn

javascript - 按日期排序和过滤

我有一个日期列,需要能够对其进行排序和过滤。数据以2010-12-23之类的字符串形式出现,并且可以根据需要进行预处理。它应显示为23.12.2010。稍后会进行一些国际化。我想知道什么是正确的内部表示:像"23.12.2010"这样的字符串不利于排序(可以通过对函数结果进行排序来完成,但速度会很慢)像"2010-12-23"这样的字符串排序正确,可以很容易地格式化,但过滤23.12不起作用(它可以完成,但它会很慢)Date可能会正确排序,但过滤会很慢moment可能是解决方案,不知道我目前的想法是创建一个包含毫秒和显示字符串的对象,这样所有的操作都可以很快。但我敢打赌,有人在我之前就

javascript - Moment.js unix 时间戳总是以分钟为单位显示时间

我正在使用Moment.js并想将unix时间戳转换为(始终)显示从当前时间开始的几分钟前。例如)4分钟前、30分钟前、94分钟前等。现在我正在使用:moment.unix(d).fromNow()但这并不总是以分钟为单位显示,例如)一小时前、一天前等。我试过使用.asMinutes()但我相信这只是带有moment.duration()的词。 最佳答案 不确定本地Moment方法是否可行,但您可以轻松制作自己的Moment扩展:moment.fn.minutesFromNow=function(){returnMath.floor

javascript - 时刻.js : how to get short date format?

我的应用程序发送一个带有javascript的HTML文件,如下所示:$(function(){moment.locale('fr');$('#datetimepicker9').datetimepicker({viewMode:'years',locale:'fr',format:''/*现在,当我设置为语言环境时,有没有办法获取配置的短日期格式,例如fr的“'jFY'”?我找到了它,但它是hack-ish:moment()['_locale']['_longDateFormat']['L']现在我的代码:$(function(){moment.locale('fr');$('#da

javascript - 使用 Moment 验证 MMDDYYYY 格式

这个问题在这里已经有了答案:Whyismoment.jsallowingdatewithonedigityearwhenusingstrictparsing?(1个回答)关闭3年前。我有以下内容。出于某种原因,moment.js没有按预期验证我的日期。当我传递字母时,它会像预期的那样失败,但当仅使用数字时,它总是会通过。我使用的是MMDDYYYY格式。如何使用moment验证MMDDYYYY?谢谢vardates="08291975";//passesasitshouldvarpassed=moment(dates,'MMDDYYYY',true).isValid();console.

javascript - 样式化 CLNDR.js 日历多日事件的第一天和最后一天

我正在使用clndr.js(http://kylestetz.github.io/CLNDR/)来显示预订度假屋的日期。这些总是使用多日事件系统显示,因为最少预订是3天。我现在需要为事件的第一天和最后一天设置不同的样式,以表明它们是转换日。理想情况下,我会通过向td添加一个类来做到这一点。这是我目前所拥有的:JS$('#calendar').clndr({template:$('#calendar-template').html(),weekOffset:1,daysOfTheWeek:['Sun','Mon','Tue','Wed','Thu','Fri','Sat'],target

javascript - Momentjs格式化力矩对象并保持偏移

我有一个momentjs对象,它包含一个带有偏移量的日期时间。这一刻对象是从它的字符串表示创建的:varx=moment("2017-02-08T04:11:52+6:00")处理对象后,我想从moment对象获得相同的文本表示。尝试格式化对象时得到以下结果:x.format()=>"2017-02-08T04:11:52+14:00"moment.parseZone(x).format("YYYY-MM-DDTHH:mm:ssZ")=>"2017-02-07T14:11:52+00:00"如何格式化我的moment对象,以便我再次拥有完全相同的表示? 最佳

javascript - moment js 日期库,在 IE 上格式化给出了 NaN

我正在使用momentjs日期库来格式化日期,但在IE上我在输出中得到一个NaN。它在其他浏览器上运行良好,例如Chrome、FF等。varvalue="2015-11";moment(value).format("YYYY-DD-0100:00")>"0NaN-NaN-0100:00"我能够通过在moment构造函数上添加相同的模式来修复它,如下所示:>moment(value,"YYYY-DD-0100:00").format("YYYY-DD-0100:00")"2015-11-0100:00"将此模式添加到构造函数中是否是一个好习惯,以便所有时刻创建对象所以它也可以在IE上工作

javascript - 格式化超过 24 小时的 MomentJS 持续时间

我想格式化汇总的总工作时间,例如49.75到此:49:45。当我这样使用持续时间时:constdur=moment.duration(49.75,'hours').asMilliseconds();moment.utc(dur).format("HH:mm:ss")//01:45:00我将收到01:45:00而不是49:45:00有没有办法在不删除天数的情况下格式化(而不是HH)持续时间? 最佳答案 我认为你不能使用格式,而是手动构建它:vardur=moment.duration(49.75,'hours');varhours=M

javascript - 使用 momentJS 比较 2 个日期

我正在尝试比较日期/时间,例如星期一09:00:00与当前时间,看看我是否超过了本周的那个时间点。例如如果现在是星期一的05:00:00,它应该返回true但每次都返回falsevardayTime=Moment("Wednesday17:00:00","ddddHH:mm:ss");varnow=Moment(Moment.now(),"ddddHH:mm:ss");console.log(Moment.utc(dayTime).isBefore(now));//returnsfalseallthetime我发现了以下类似的问题,但格式化时间后似乎没有解决问题。Comparingtw