getRandomDateBetween() { // 生成当前时间一个月内的随机时间。
var date = new Date();
var e = date.getTime();//当前时间的秒数
var f = date.getTime()-(30*24*60*60*1000); //30天之前的秒数,
//这里是注释打印不用看 console.log(a.Format('yyyy-MM-dd hh:mm:ss'),b.Format('yyyy-MM-dd hh:mm:ss'))
//这里是注释打印不用看console.log(new Date(this.RandomNumBoth(f,e)).Format('yyyy-MM-dd hh:mm:ss'))
return new Date(Store.RandomNumBoth(f,e)).Format('yyyy-MM-dd hh:mm:ss');
// Store.RandomNumBoth(当前时间秒数,30天之前的时间秒数),我这是react语法在这调用加类名(Store),你们是别的就直接 this,RandomNumBoth
},
RandomNumBoth(Min,Max){
var Range = Max - Min;
var Rand = Math.random();
var num = Min + Math.round(Rand * Range); //四舍五入
return num;
},
先计算一下这段时间内有多少秒S,可以用库函数计算
然后再生成从0到S的随机数,然后加上最小时间,就得到随机的时间了。不能按年月日时分秒分别随机,那样概率就不均匀了。
function getRandomDateBetween(a, b) { // 要求a, b 都是Date类型, 且a < b
var date = new Date(),
a = a.getTime(),
b = b.getTime();
date.setTime(Math.random(b - a) + a);
return date;
}
JS有获取系统当前时间 的方法
网上可以搜得到很多的,
然后你可以对获取的当前时间做处理