首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与MomentJS比较时间

与MomentJS比较时间
EN

Stack Overflow用户
提问于 2016-08-26 10:51:17
回答 1查看 9.8K关注 0票数 7

我在试着和momentJS比较一下时间。这是我的脚本

代码语言:javascript
复制
$( document ).ready(function() {
var today =moment();
console.log(today.format("hh:mm"));
    if((today.format('D') == (moment().day("Sunday").format('D')) || (today.format('D') == moment().day('Saturday').format('D'))))
        {
            $('.kompensasi').val("100,000");
            $('.chk').hide();
        }
    else{       
        if((today.format("hh:mm") > moment('00:00', 'hh:mm')) && (today.format("hh:mm") < moment('03:00', 'hh:mm')))
                {
                    $('.kompensasi').val("30,000");
                    $('.cekbok').val('');
                }else{
                    $('.cekbok').val('Dapet RO 1');
                    $('.kompensasi').val("0");
                }
        }
});

这是我的表格

代码语言:javascript
复制
<div class="col-sm-7">



            Kompensasi : <input name="dapet" type="text" readonly class="kompensasi" />
           </div>  
    </div>
             <div class="form-group chk">
                      <label class="col-sm-3 control-label">Ro</label>
                      <div class="col-sm-7">
                      <input type="text" class='cekbok' name='rostatus' />
                      </div>
            </div>

我从console.log(today.format("hh:mm"))得到这个结果01:44

使用上面的脚本,我总是转到else,所以有什么方法可以修复它吗?

这是我的小提琴https://jsfiddle.net/s9wfh9ye/33/

我提出的问题

代码语言:javascript
复制
    var today =moment();
    var after  = moment(today.format("hh:mm")).isAfter(moment('00:00', "hh:mm"));
    var before = moment(today.format("hh:mm")).isBefore(moment('03:00', "hh:mm"));

        today.format('hh:mm').valueOf() -->02:17

        moment('00:00', 'hh:mm').valueOf() --> 1472058000000

        moment('03:00', 'hh:mm').valueOf() -->1472068800000



   console.log(after); // false

console.log(before); // false
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-26 11:01:24

要使用==<>,您需要将moment转换为一个数字。为此,请使用.valueOf()。例如:

代码语言:javascript
复制
today.valueOf() < moment('03:00', 'hh:mm').valueOf()

但是,moment.js还提供了可读性更好的方法:

代码语言:javascript
复制
today.isBefore(moment('03:00', 'hh:mm'))

您可以使用.isBefore().isAfter().isSame().isSameOrBefore()等。有关更多信息,请阅读文档:http://momentjs.com/docs/#/query/

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39157618

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档