在JavaScript中从动态数据集动态创建条件
我的地理位置移动应用程序是基于一些硬编码条件运行的,比如在JavaScript中从动态数据集动态创建条件,javascript,Javascript,我的地理位置移动应用程序是基于一些硬编码条件运行的,比如 function checkTime(hms){ // for example a day (day 0 == Sun) between 06:00 and 23:45 if( (today === 1 || today === 2 || today === 3 || today === 4) && hms > "09:00:00" && hms < "15:40
function checkTime(hms){
// for example a day (day 0 == Sun) between 06:00 and 23:45
if( (today === 1 || today === 2 || today === 3 || today === 4) && hms > "09:00:00" && hms < "15:40:00") {
ajax_post(position.coords.latitude, position.coords.longitude, position.coords.accuracy, position.coords.speed, position.timestamp);
}
else if( today === 5 && hms > "13:00:00" && hms < "13:40:00") {
ajax_post(position.coords.latitude, position.coords.longitude, position.coords.accuracy, position.coords.speed, position.timestamp);
}
else {
document.getElementById("status").innerHTML = "Data not scheduled to be posted to the server yet";
}
}
var timeDb = {
mon:[],
tue:[{start:"21:00",end:"23:00"},{start:"23:00",end:"22:30"}],
wed:[],
thu:[],
fri:[],
sat:[{start:"11:00",end:"22:15"}],
sun:[]
}
我的问题是,由于上述内容是动态的,当用户更新timeDb
时,如何为上述内容动态创建条件?我只使用JavaScript
谢谢 您可以使用一个数组进行日数到日字符串的转换,并使用此日名访问
timeDB
,然后检查一项是否在计划时间内
功能检查时间(今天,hms){
var numberToDay=[‘周一’、‘周二’、‘周三’、‘周四’、‘周五’、‘周六’、‘太阳’];
如果(timeDb[numberToDay[今天])。一些(t=>t.start>=hms&&hms哇,这太棒了,谢谢。我从来没有听说过。有些,但会改变的!是数组的存在量词,非常方便用条件检查数组。我今天刚刚实现了这一点,并做了一些更改。如果有人对上面的示例有问题,请尝试开始使用enumberToDay
打开sun
,并切换第一个hms
条件,如sohms>=t.start
。