JavaScript判斷當(dāng)前時(shí)間是在某個(gè)時(shí)間點(diǎn)之前/之后
比如我想判斷當(dāng)前時(shí)間是在14點(diǎn)之前,還是之后,就可以用以下代碼
var currentDate = parseTime(new Date(), "{y}-{m}-vvxyksv9kd");// 當(dāng)前時(shí)間 格式2023-07-18
var thetime = currentDate + ' 14:00:00'; // 指定時(shí)間點(diǎn)
var d = new Date(Date.parse(thetime.replace(/-/g, "/")));// 兼容蘋果
var curDate = new Date();
if (curDate <= d) {
console.log("14點(diǎn)之前");
} else {
console.log("14點(diǎn)之后");
}這里用到了一個(gè)格式化的函數(shù)parseTime,可以 把時(shí)間戳轉(zhuǎn)為yyyy-mm-dd格式
/**
?* 時(shí)間格式化parseTime
?*?
?*/
function parseTime(time, cFormat) {
? if (arguments.length === 0 || !time) {
? ? return null
? }
? const format = cFormat || '{y}-{m}-vvxyksv9kd {h}:{i}:{s}'
? let date
? if (typeof time === 'object') {
? ? date = time
? } else {
? ? if ((typeof time === 'string')) {
? ? ? if ((/^[0-9]+$/.test(time))) {
? ? ? ? // support "1548221490638"
? ? ? ? time = parseInt(time)
? ? ? } else {
? ? ? ? // support safari
? ? ? ? // https://stackoverflow.com/questions/4310953/invalid-date-in-safari
? ? ? ? time = time.replace(new RegExp(/-/gm), '/')
? ? ? }
? ? }
? ? if ((typeof time === 'number') && (time.toString().length === 10)) {
? ? ? time = time * 1000
? ? }
? ? date = new Date(time)
? }
? const formatObj = {
? ? y: date.getFullYear(),
? ? m: date.getMonth() + 1,
? ? d: date.getDate(),
? ? h: date.getHours(),
? ? i: date.getMinutes(),
? ? s: date.getSeconds(),
? ? a: date.getDay()
? }
? const time_str = format.replace(/{([ymdhisa])+}/g, (result, key) => {
? ? const value = formatObj[key]
? ? // Note: getDay() returns 0 on Sunday
? ? if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value ] }
? ? return value.toString().padStart(2, '0')
? })
? return time_str
}到此這篇關(guān)于JavaScript判斷當(dāng)前時(shí)間是在某個(gè)時(shí)間點(diǎn)之前/之后的文章就介紹到這了,更多相關(guān)JS判斷當(dāng)前時(shí)間在某個(gè)時(shí)間段內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于原生CSS+JS實(shí)現(xiàn)一個(gè)標(biāo)簽輸入框
在各種框架大行其道的氛圍下,有些原生的屬性和方法可能都不太關(guān)注了,這也不失為是一種損失。本文就將利用原生CSS+JS實(shí)現(xiàn)一個(gè)簡單的標(biāo)簽輸入框,感興趣的可以了解一下2022-04-04
利用Bootstrap實(shí)現(xiàn)表格復(fù)選框checkbox全選
Bootstrap相信應(yīng)該不用多介紹,來自 Twitter,是目前最受歡迎的前端框架。這篇文章主要給大家介紹了如何利用Bootstrap實(shí)現(xiàn)表格中的checkbox復(fù)選框全選效果,文中給出詳細(xì)的介紹及完整的實(shí)例代碼,相信對(duì)大家的理解和學(xué)習(xí)具有一定的參考借鑒價(jià)值,下面來一起看看吧。2016-12-12
JS首屏加載時(shí)間優(yōu)化的解決方法總結(jié)
首屏加載時(shí)間是一個(gè)衡量網(wǎng)頁性能和用戶體驗(yàn)的關(guān)鍵指標(biāo),這個(gè)問題無論是在面試中還是在項(xiàng)目開發(fā)中都占有極其高的權(quán)重,本文為大家整理了幾種JS中優(yōu)化首屏加載時(shí)間的方法,希望對(duì)大家有所幫助2024-02-02
javascript獲取隱藏元素(display:none)的高度和寬度的方法
這篇文章主要介紹了javascript獲取隱藏元素(display:none)的高度和寬度的方法,實(shí)現(xiàn)方法比較復(fù)雜,需要的朋友可以參考下2014-06-06
微信小程序canvas動(dòng)態(tài)時(shí)鐘
這篇文章主要為大家詳細(xì)介紹了微信小程序canvas動(dòng)態(tài)時(shí)鐘,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-10-10

