第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

檢查給定時(shí)間(僅小時(shí):分鐘)是否位于其他兩個不同時(shí)間之間?

檢查給定時(shí)間(僅小時(shí):分鐘)是否位于其他兩個不同時(shí)間之間?

我有兩個不同的時(shí)間: var shiftStartTime = "05:48"; var shiftEndTime = "14:29";我還有另一個時(shí)間selectedDate =“06:20”(這將根據(jù) datetimepicker 選擇而改變),我想檢查selectedDate是否應(yīng)該在(shiftStartTime 和shiftEndTime)之間。有人可以幫忙嗎?更新的代碼:我有 6 個不同的時(shí)間跨度,如下所示var shift1StartTime = "05:48";var shift1EndTime = "14:18";var shift2StartTime = "14:30";var shift2EndTime = "22:29";var shift3StartTime = "22:30";    var shift3EndTime = "05:47";使用所有 6 個時(shí)間跨度,我想檢查給定時(shí)間是否在(shift1StartTime 和 shift1EndTime)之間返回 shift1或者如果給定時(shí)間介于 (shift2StartTime 和 shift2EndTime) 之間,則返回 shift2或者如果給定時(shí)間介于 (shift3StartTime 和 shift3EndTime) 之間,則返回 shift3
查看完整描述

4 回答

?
江戶川亂折騰

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超5個贊

只需比較字符串即可


var shiftStartTime = "05:48"; var shiftEndTime = "14:29";


shiftStartTime > shiftEndTime // false


查看完整回答
反對 回復(fù) 2023-07-14
?
守著星空守著你

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超8個贊

好的,所以您得到了格式為字符串的三個相對時(shí)間HH:mm。我假設(shè)您的時(shí)間以 24 小時(shí)字符串/軍事時(shí)間形式給出,因?yàn)榉駝t,您需要 AM / PM 說明符。


將您正在使用的數(shù)據(jù)采用適合機(jī)器可讀的格式總是很有用的,因此您可以將它們解析為將小時(shí)和分鐘作為數(shù)字保存的簡單對象。


執(zhí)行此操作的函數(shù)可能如下所示。


function parseTimeStr(time) {

    // The pattern of your input,

    // allows spaces around the `:`

    // and single-digit inputs like `8:00`

    let re = /([0-9][0-9]?)\s*:\s*([0-9][0-9]?)/;

    let result = re.exec(time.trim());


    if (result === null) {

        throw "No match"

    }


    let hour = parseInt(result[1], 10);

    let minute = parseInt(result[2], 10);


    /* handle out of range values here */


    return { hour, minute };

}

好的,現(xiàn)在你已經(jīng)有了這些對象了。你如何比較它們?有一個模式:讓一個函數(shù)返回第一個參數(shù)是否大于 (1)、等于 (0) 還是小于 (-1) 第二個參數(shù)。


既然時(shí)間是一個對象,那么寫這個就很簡單了:


function cmpDate(date1, date2) {

    if (date1.hour > date2.hour) {

        return 1;

    } else if (date1.hour < date2.hour) {

        return -1;

    } else if (date1.minute > date2.minute) {

        return 1;

    } else if (date1.minute < date2.minute) {

        return -1;

    } else {

        return 0;

    }

}

好吧,現(xiàn)在我們可以有一個輔助函數(shù)來檢查第一個參數(shù)是否位于最后兩個參數(shù)定義的閉區(qū)間內(nèi):


function isInShift(time, shiftStart, shiftEnd) {

    // time is greater or equal shiftStart

    // and less or equal shiftEnd

    return cmpDate(time, shiftStart) !== -1 && cmpDate(time, shiftEnd) !== 1;

}

然后您最終可以通過調(diào)用進(jìn)行比較isInShift(parseTimeStr(selectedTime), parseTimeStr(shiftStartTime), parseTimeStr(shiftEndTime))。這將返回一個布爾值。您可以輕松擴(kuò)展此基礎(chǔ)架構(gòu)以實(shí)現(xiàn)多個輪班。


請注意,現(xiàn)實(shí)和您的用戶都可能比您想象的更……扭曲。上面的代碼沒有對無效時(shí)間輸入進(jìn)行錯誤處理,也沒有考慮夜班,但這些都是你可以輕松計(jì)算出來的細(xì)節(jié),你只需要花點(diǎn)功夫去思考它們。


查看完整回答
反對 回復(fù) 2023-07-14
?
精慕HU

TA貢獻(xiàn)1845條經(jīng)驗(yàn) 獲得超8個贊

const date  = new Date();

const shiftStartTime = '05:48';

const shiftEndTime = '14:29';

const selectedDate = '14:20';

const start = date.setHours(+shiftStartTime.split(':')[0], +shiftStartTime.split(':')[1], 0, 0);

const end = date.setHours(+shiftEndTime.split(':')[0], +shiftEndTime.split(':')[1], 0, 0);

const selected = date.setHours(+selectedDate.split(':')[0], +selectedDate.split(':')[1], 0, 0);

if (start < selected && selected < end) {

  console.log(true);

} else {

  console.log(false);

}


查看完整回答
反對 回復(fù) 2023-07-14
?
元芳怎么了

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超7個贊

這里有一些 JS 可以做到這一點(diǎn),盡管更好的格式時(shí)間會讓它變得更容易


function findTotalTime(time) {

  hours = parseInt(time.substring(0,2))

  mins = parseInt(time.substring(3,5))

  return (hours*60) + mins

}


startTime = findTotalTime(shiftStartTime)

endTime = findTotalTime(shiftEndTime)

selectedTime = findTotalTime(selectedDate)

if (selectedTime > startTime && selectedTime < endTime) {

  // time is inbetween shifts

}


查看完整回答
反對 回復(fù) 2023-07-14
  • 4 回答
  • 0 關(guān)注
  • 200 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號