我将如何在momentjs中将分钟数转到最接近的5分钟?

时间:2014-04-18 19:42:51

标签: javascript jquery momentjs

目前在我使用moment.js的网站上工作。我只想使用jquery。

我使用以下方式获取当前时间:

var minute = moment().minute();

但我想从最近的5分钟开始设置闹钟。

现在说下午8:38,var分钟为38.我想将输入设置为40(即40分钟)

所以我的选择是:

<select id="minuteID">
                    <option value="0">00</option>
                    <option value="5">05</option>
                    <option value="10">10</option>
                    <option value="15">15</option>
                    <option value="20">20</option>
                    <option value="25">25</option>
                    <option value="30">30</option>
                    <option value="35">35</option>
                    <option value="40">40</option>
                    <option value="45">45</option>
                    <option value="50">50</option>
                    <option value=55>55</option>
                </select>

我可以像这样输入项目:

var minute = moment().minute();
$("#minuteID option[value=" + minute + "]").prop("selected", "selected");

我如何做到这一点,而不是找到确切的选项分钟,而是以5的间隔(到最近的5个标记)找到它。

2 个答案:

答案 0 :(得分:24)

minute = 5 * Math.round( minute / 5 );

会按你的意愿做。

答案 1 :(得分:2)

var minute = roundToFive(moment().minute());
$("#minuteID option[value=" + minute + "]").prop("selected", "selected");

function roundToFive(num) {
    var temp = num%5;
    if (temp<3)
         return num-temp;
    else
         return num+5-temp;
}