/**
* 生成随机时间函数
* @returns {string} 格式为HH:MM:SS的随机时间字符串
*/
function 随机时间() {
// 生成随机小时、分钟和秒数
var hours = Math.floor(Math.random() * 24);
var minutes = Math.floor(Math.random() * 60);
var seconds = Math.floor(Math.random() * 60);
// 格式化时间为两位数
hours = hours < 10 ? '0' + hours : hours;
minutes = minutes < 10 ? '0' + minutes : minutes;
seconds = seconds < 10 ? '0' + seconds : seconds;
// 返回格式化后的时间字符串
return hours + ':' + minutes + ':' + seconds;
}
// 示例调用
printl("生成的随机时间: " + 随机时间());
// 额外示例:生成10个随机时间
printl("\n生成10个随机时间:");
for (let i = 0; i < 10; i++) {
printl(随机时间());
}
/* ========== 随机时间的妙用 ========== */
// 1. 模拟日志时间戳
printl("\n模拟日志时间戳:");
function 模拟日志(内容) {
printl("[" + 随机时间() + "] " + 内容);
}
模拟日志("系统启动完成");
模拟日志("用户登录成功");
模拟日志("数据处理完毕");
// 2. 生成随机闹钟时间
printl("\n今日随机闹钟建议:");
var 闹钟次数 = 3;
for (var i = 1; i <= 闹钟次数; i++) {
printl("闹钟" + i + ": " + 随机时间());
}
// 3. 测试数据生成器 (ES5兼容版本)
printl("\n生成测试数据集(5条):");
var 测试数据 = [];
for (var i = 0; i < 5; i++) {
测试数据.push({
id: Math.floor(Math.random() * 1000),
time: 随机时间(),
status: ["成功", "失败", "进行中"][Math.floor(Math.random() * 3)]
});
}
// 兼容性更好的输出方式
测试数据.forEach(function(item) {
printl("ID: " + item.id + " | 时间: " + item.time + " | 状态: " + item.status);
});
// 4. 随机延时任务模拟 (ES5兼容版本)
printl("\n随机延时任务模拟:");
function 格式化时间(date) {
var hours = date.getHours();
var minutes = date.getMinutes();
var seconds = date.getSeconds();
hours = hours < 10 ? '0' + hours : hours;
minutes = minutes < 10 ? '0' + minutes : minutes;
seconds = seconds < 10 ? '0' + seconds : seconds;
return hours + ":" + minutes + ":" + seconds;
}
function 随机延时任务(任务名, 回调) {
// 生成1-10秒的随机延时(毫秒)
var 延时毫秒 = Math.floor(Math.random() * 10000) + 1000;
var 开始时间 = new Date();
var 开始时间显示 = 格式化时间(开始时间);
printl("[" + 开始时间显示 + "] 任务\"" + 任务名 + "\"将在 " + (延时毫秒/1000).toFixed(3) + "秒后执行");
setTimeout(function() {
var 结束时间 = new Date();
var 结束时间显示 = 格式化时间(结束时间);
printl("[" + 结束时间显示 + "] 任务\"" + 任务名 + "\"执行完成,实际等待: " + ((结束时间-开始时间)/1000).toFixed(3) + "秒");
if (typeof 回调 === 'function') {
回调();
}
}, 延时毫秒);
}
// 使用回调方式执行延时任务
printl("\n开始执行延时任务序列:");
随机延时任务("数据备份", function() {
printl("-- 数据备份任务完成,开始缓存清理 --");
随机延时任务("缓存清理", function() {
printl("\n所有延时任务已完成");
printl("=======================");
printl("任务执行总结:");
printl("1. 数据备份 - 已完成");
printl("2. 缓存清理 - 已完成");
printl("=======================");
});
});
// 5. 游戏开发应用 - 随机事件触发
printl("\n游戏随机事件模拟:");
function 随机事件() {
var 事件时间 = 随机时间();
var 事件类型 = ["宝箱出现", "Boss刷新", "任务更新"][Math.floor(Math.random() * 3)];
printl("[" + 事件时间 + "] " + 事件类型);
}
随机事件();
随机事件();
function 随机时间() {
// 生成HH:MM:SS格式的随机时间
// 示例输出:"14:25:36"
}
a) 日志模拟:
function 模拟日志(内容) {
printl("[" + 随机时间() + "] " + 内容);
}
// 示例:[14:25:36] 系统启动完成
b) 闹钟生成:
// 生成3个随机闹钟时间
// 示例输出:闹钟1: 07:53:20
c) 测试数据生成:
// 生成包含随机时间的测试数据
// 示例输出:ID: 123 | 时间: 08:45:22 | 状态: 成功
d) 延时任务模拟:
function 随机延时任务(任务名, 回调) {
// 示例输出:[14:30:22] 任务"数据备份"将在 3.5秒后执行
// 实际执行后会输出完成时间和等待时长
}
e) 游戏事件触发:
// 示例输出:[16:10:47] 宝箱出现
随机时间
函数生成一个格式为HH:MM:SS
的随机时间字符串。模拟日志
函数使用随机时间
生成时间戳,模拟日志记录的时间信息。id
、time
和status
。随机延时任务
函数模拟一个延时任务,任务的延时时间是随机的,任务执行后会调用回调函数(如果传入的话)。随机事件
函数模拟游戏中可能出现的随机事件,事件的时间和类型都是随机的。欢迎光临 B2B网络软件 (http://bbs.niubt.cn/) | Powered by Discuz! X3.2 |