如何在 JavaScript 中使用 map 函数来判断时间是否处于特定时间范围内?
假设我们的科目记录计划的学习时间如下 −
const scheduleDetails = [ { subjectName: 'JavaScript', studyTime: '5 PM - 11 PM' }, { subjectName: 'MySQL', studyTime: '12 AM - 4PM' } ]
我们可以使用 map() 函数。以下是代码 −
示例
const scheduleDetails = [ { subjectName: 'JavaScript', studyTime: '5 PM - 11 PM' }, { subjectName: 'MySQL', studyTime: '12 AM - 4PM' } ] function timeToReadSubjectName(scheduleDetails) { var currentTime = new Date().getHours(); let result = ''; scheduleDetails.map(obj => { const hourDetails = obj.studyTime.split(' '); const firstCurrentTime = hourDetails[1] === 'PM' ? 12 : 0; const secondCurrentTime = hourDetails[4] === 'PM' ? 12 : 0; if (currentTime > (+hourDetails[0] + firstCurrentTime) && currentTime < (+hourDetails[3] + secondCurrentTime)) { result = obj.subjectName; }; }) return result; } console.log("The Subject which you need to read in this time="+timeToReadSubjectName(scheduleDetails));
要运行上面的程序,你需要使用以下命令 −
node fileName.js.
我的文件名是 demo128.js。
输出
这将生成以下输出 −
PS C:\Users\Amit\JavaScript-code> node demo128.js The Subject which you need to read in this time=JavaScript
广告