You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript中如何根据时间匹配模式查找数组中的对应视频源

解决方案:根据当前时间匹配对应视频源

没问题,我来帮你实现这个根据时间自动匹配对应视频的功能!核心思路是把当前时间的分钟数划分成15分钟的区间,然后对应到你的videoSources数组索引,再更新currentIndex并切换视频。

步骤1:实现时间匹配逻辑

首先我们写一个函数来计算当前应该播放的视频索引:

function getCurrentVideoIndex() {
    const now = new Date();
    // 获取当前分钟数(范围0-59)
    const currentMinutes = now.getMinutes();
    // 计算所属的15分钟区间:0-14→0,15-29→1,30-44→2,45-59→3
    let intervalIndex = Math.floor(currentMinutes / 15);
    // 确保索引不超过数组长度,避免数组越界
    intervalIndex = Math.min(intervalIndex, videoSources.length - 1);
    return intervalIndex;
}

这个逻辑完全贴合你的需求:比如当前时间是00:44时,currentMinutes为44,44/15=2.933取整后是2,对应videoSources[2]也就是0030.mp4,和你举的例子完全一致。

步骤2:整合到视频切换流程

接下来把这个逻辑和你已有的myNewSrc函数结合,写出完整的更新逻辑:

var videoSources = ["0000.mp4", "0015.mp4", "0030.mp4", "0045.mp4", "0100.mp4"];
var currentIndex = 0;

// 你已有的切换视频源函数
function myNewSrc() {
    var myVideo = document.getElementsByTagName('video')[0];
    myVideo.src = videoSources[currentIndex];
    myVideo.load();
}

// 新增:更新当前视频索引并切换视频的函数
function updateVideoBasedOnTime() {
    currentIndex = getCurrentVideoIndex();
    myNewSrc();
}

步骤3:定时自动更新(可选但推荐)

如果需要页面持续根据时间自动切换视频,比如每分钟检查一次时间变化,可以用setInterval实现定时触发:

// 页面加载完成后,先切换到对应时间的视频
updateVideoBasedOnTime();
// 每60秒(60000毫秒)检查一次时间并更新视频
setInterval(updateVideoBasedOnTime, 60000);

这样页面打开时就会加载正确的视频,之后每分钟自动校验时间,确保视频和当前时段匹配。

额外适配说明

关于数组里的0100.mp4:按照基础逻辑,常规分钟数(0-59)不会触发这个视频。如果你希望在整点(比如1:00、2:00等)播放它,可以调整逻辑:

function getCurrentVideoIndex() {
    const now = new Date();
    const currentMinutes = now.getMinutes();
    const currentHours = now.getHours();
    // 整点且非0点时,播放0100.mp4
    if (currentMinutes === 0 && currentHours > 0) {
        return videoSources.length - 1;
    } else {
        let intervalIndex = Math.floor(currentMinutes / 15);
        // 常规时段避开最后一个索引,留给整点视频
        intervalIndex = Math.min(intervalIndex, videoSources.length - 2);
        return intervalIndex;
    }
}

内容的提问来源于stack exchange,提问作者Emiliano Spada

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 10:08:49