【问题标题】:Create random UNIX timestamp based on if-else clause基于 if-else 子句创建随机 UNIX 时间戳
【发布时间】:2016-03-04 00:18:33
【问题描述】:

如何使用 JavaScript 创建随机 UNIX 时间戳:

  • 如果appointment.status === "today",则在现在和工作日结束之间(即今天08:00-17:00)

  • 明天 + 1 周开始,但请记住工作日(因此可以是下周星期二 13:00,请记住工作日,即 08:00-17:00)强> 如果appointment.status === "pending".

这是我到目前为止所做的:

if(appointment.status === "today") {
  appointment.timestamp = (function() {
    return a
  })();         
} else if(appointment.status === "pending") {       
  appointment.timestamp = (function() {
    return a
  })();                 
}

【问题讨论】:

    标签: javascript timestamp


    【解决方案1】:

    这与另一个问题 (Generate random date between two dates and times in Javascript) 类似,但要处理“待定”约会,您还需要一种方法在 明天 和从明天起的一周 之间找到一天.

    此函数将返回传递给它的日期 8:00 到 17:00 之间的随机时间戳:

    var randomTimeInWorkday = function(date) {
        var begin = date;
        var end = new Date(begin.getTime());
    
        begin.setHours(8,0,0,0);
        end.setHours(17,0,0,0);
    
        return Math.random() * (end.getTime() - begin.getTime()) + begin.getTime();
    }
    

    要获得今天 08:00 到 17:00 之间的随机时间戳,您可以这样做:

    var today = new Date();
    var timestamp = randomTimeInWorkday(today);
    console.log(timestamp); // 1457033914204.1597
    console.log(new Date(timestamp)); // Thu Mar 03 2016 14:38:34 GMT-0500 (EST)
    

    此函数将返回一个介于明天和从明天开始的一周之间的随机日期,作为传递给它的日期:

    var randomDayStartingTomorrow = function(date) {
      var begin = new Date(date.getTime() + 24 * 60 * 60 * 1000); 
      var end = new Date(begin.getTime());
    
      end.setDate(end.getDate() + 7);
    
      return new Date(Math.random() * (end.getTime() - begin.getTime()) + begin.getTime());
    }
    

    要在明天和明天之后的一周之间的任意一天获取 08:00 到 17:00 之间的随机时间戳,您可以这样做:

    var today = new Date();
    var randomDay = randomDayStartingTomorrow(today);
    var timestamp = randomTimeInWorkday(randomDay);
    console.log(timestamp); // 1457194668335.3162
    console.log(new Date(timestamp)); // Sat Mar 05 2016 11:17:48 GMT-0500 (EST)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-02
      • 1970-01-01
      • 2012-12-21
      • 1970-01-01
      • 2021-02-09
      • 1970-01-01
      • 2014-10-28
      • 2014-04-11
      相关资源
      最近更新 更多