需求内容:
找出时间列表中和当前日期最接近的日期,显示“xx-xx开始”,(最接近的日期不包括已经过去的日期)
点击查看代码
const dateList = [
'2023-03-03',
'2023-03-04',
'2023-03-15',
'2023-02-22',
'2023-05-24',
'2023-05-23',
'2023-03-25',
]
let newStampTime = []
const currentTime = Date.parse(new Date().toJSON().slice(0, 10)) // 当前时间戳
let currentIndex = 0
newStampTime = dateList.map(item => Date.parse(new Date(item))) // dateList 数组变换成时间戳数组
let diffNum = 0
newStampTime.map((item, index) => {
if (currentTime - item < 0) {
if ((currentTime - item > diffNum && diffNum < 0) || diffNum === 0) {
diffNum = currentTime - item
currentIndex = index
}
if (diffNum === 0) {
diffNum = currentTime - item
currentIndex = index
}
}
})
console.log('原始数据的时间', dateList)
console.log('数组日期的时间戳数组', newStampTime)
console.log('当前日期离数组中时间最近的下标值是', currentIndex)
console.log('最近的日期是', dateList[currentIndex])
console.log('当前的日期是', new Date().toJSON())
执行结果:
分类:
js世界
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现