信息发布软件,b2b软件,广告发布软件

 找回密码
 立即注册
搜索
查看: 616|回复: 0
打印 上一主题 下一主题

[宣传软件网站动态] AIWROK软件苹果IOS系统随机数[RJrxn1afZqW7yjf2NK]方法小结

[复制链接]

779

主题

863

帖子

5530

积分

积分
5530
跳转到指定楼层
宣传软件楼主
发表于 2025-9-8 09:15:52 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

资讯缩略图:

资讯发布日期:2025-09-08

资讯发布简介:AIWROK软件随机数[RJrxn1afZqW7yjf2NK]方法小结

资讯关键词:AIWROK软件随机数[RJrxn1afZqW7yjf2NK]方法小结

资讯所属分类:IT资讯 

联系:

① 本信息收集于网络,如有不对的地方欢迎联系我纠正!
② 本信息免费收录,不存在价格的问题!
③ 如果您的网站也想这样出现在这里,请您加好友情链接,我当天会审核通过!

④友情链接关键字:软件网站分类目录 网址:http://www.postbbs.com/

资讯详细描述
AIWROK软件随机数[RJrxn1afZqW7yjf2NK]方法小结
AIWROK软件苹果IOS系统随机数[RJrxn1afZqW7yjf2NK]方法小结 b2b软件
  1. // ... existing code ...

  2. /*
  3. 🍎交流QQ群711841924群一,苹果内测群,528816639
  4. 🍎🔨LtUqFOGkc6随机小数生成函数
  5. */

  6. // 🔨LtUqFOGkc6随机小数生成函数

  7. // 📌LtUqFOGkc6随机小数生成函数
  8. /*
  9. 类别 详情说明
  10. 方法功能 生成指定范围内的随机小数
  11. 方法签名 Double LtUqFOGkc6(Double min, Double max)
  12. 返回值 Double(生成的随机小数)
  13. 参数 - Double min:随机小数的最小值
  14.      - Double max:随机小数的最大值
  15. */
  16. function LtUqFOGkc6(min, max) {
  17.     return Math.random() * (max - min) + min;
  18. }

  19. // 📌随机点击位置生成函数(修复版本)
  20. /*
  21. 类别 详情说明
  22. 方法功能 在指定区域内生成随机点击坐标
  23. 方法签名 Object randClickPosition(Double left, Double top, Double right, Double bottom)
  24. 返回值 Object(包含x和y坐标的对象)
  25. 参数 - Double left:区域左边界
  26.      - Double top:区域上边界
  27.      - Double right:区域右边界
  28.      - Double bottom:区域下边界
  29. */
  30. function randClickPosition(left, top, right, bottom) {
  31.     var x = LtUqFOGkc6(left, right);
  32.     var y = LtUqFOGkc6(top, bottom);
  33.     return {x: x, y: y};
  34. }

  35. // 使用示例:
  36. printl("=== LtUqFOGkc6随机小数函数使用示例 ===");

  37. // 生成0到1之间的随机小数
  38. var randomDecimal1 = LtUqFOGkc6(0, 1);
  39. printl("生成0-1之间的随机小数: " + randomDecimal1);

  40. // 生成10到100之间的随机小数
  41. var randomDecimal2 = LtUqFOGkc6(10, 100);
  42. printl("生成10-100之间的随机小数: " + randomDecimal2);

  43. // 生成随机延迟时间(1.5秒到3.5秒之间)
  44. var delayTime = LtUqFOGkc6(1.5, 3.5);
  45. printl("生成随机延迟时间: " + delayTime + "秒");

  46. // 在点击操作中使用随机小数作为坐标
  47. var x = LtUqFOGkc6(100.0, 500.0);
  48. var y = LtUqFOGkc6(200.0, 800.0);
  49. printl("生成随机坐标: (" + x + ", " + y + ")");

  50. // 使用修复后的随机点击位置函数
  51. var clickPos = randClickPosition(100.0, 200.0, 500.0, 800.0);
  52. printl("生成随机点击位置: (" + clickPos.x + ", " + clickPos.y + ")");

  53. // 更多随机数相关函数示例:

  54. // 📌随机整数生成函数
  55. /*
  56. 类别 详情说明
  57. 方法功能 生成指定范围内的随机整数
  58. 方法签名 Int32 randInt(Int32 min, Int32 max)
  59. 返回值 Int32(生成的随机整数)
  60. 参数 - Int32 min:随机整数的最小值
  61.      - Int32 max:随机整数的最大值
  62. */
  63. function randInt(min, max) {
  64.     return Math.floor(Math.random() * (max - min + 1)) + min;
  65. }

  66. // 📌随机布尔值生成函数
  67. /*
  68. 类别 详情说明
  69. 方法功能 生成随机布尔值(true/false)
  70. 方法签名 Boolean randBool()
  71. 返回值 Boolean(生成的随机布尔值)
  72. 参数 无
  73. */
  74. function randBool() {
  75.     return Math.random() < 0.5;
  76. }

  77. // &#128204;随机数组元素选择函数
  78. /*
  79. 类别 详情说明
  80. 方法功能 从数组中随机选择一个元素
  81. 方法签名 Object randChoice(Array arr)
  82. 返回值 Object(数组中的随机元素)
  83. 参数 - Array arr:源数组
  84. */
  85. function randChoice(arr) {
  86.     if (!arr || arr.length === 0) return null;
  87.     var index = randInt(0, arr.length - 1);
  88.     return arr[index];
  89. }

  90. // &#128204;随机颜色生成函数
  91. /*
  92. 类别 详情说明
  93. 方法功能 生成随机颜色值
  94. 方法签名 String randColor()
  95. 返回值 String(十六进制颜色值)
  96. 参数 无
  97. */
  98. function randColor() {
  99.     var letters = '0123456789ABCDEF';
  100.     var color = '#';
  101.     for (var i = 0; i < 6; i++) {
  102.         color += letters[Math.floor(Math.random() * 16)];
  103.     }
  104.     return color;
  105. }

  106. // 使用示例:
  107. printl("=== 更多随机数方法使用示例 ===");

  108. // 随机整数示例
  109. var randomInteger = randInt(1, 100);
  110. printl("生成1-100之间的随机整数: " + randomInteger);

  111. // 随机布尔值示例
  112. var randomBoolean = randBool();
  113. printl("生成随机布尔值: " + randomBoolean);

  114. // 随机数组元素示例
  115. var fruits = ["苹果", "香蕉", "橙子", "葡萄", "草莓"];
  116. var randomFruit = randChoice(fruits);
  117. printl("从数组中随机选择: " + randomFruit);

  118. // 随机颜色示例
  119. var randomColor = randColor();
  120. printl("生成随机颜色: " + randomColor);

  121. // 综合应用示例:模拟用户随机操作
  122. function simulateRandomUserActions() {
  123.     printl("=== 模拟用户随机操作 ===");
  124.    
  125.     // 随机决定执行哪种操作
  126.     var actions = ["点击", "滑动", "输入", "等待"];
  127.     var action = randChoice(actions);
  128.    
  129.     switch(action) {
  130.         case "点击":
  131.             var pos = randClickPosition(0, 0, screen.getScreenWidth(), screen.getScreenHeight());
  132.             printl("随机点击屏幕位置: (" + pos.x + ", " + pos.y + ")");
  133.             // hid.click(pos.x, pos.y); // 实际点击操作
  134.             break;
  135.             
  136.         case "滑动":
  137.             var startPos = randClickPosition(100, 100, 400, 600);
  138.             var endPos = randClickPosition(100, 100, 400, 600);
  139.             printl("随机滑动从: (" + startPos.x + ", " + startPos.y + ") 到 (" + endPos.x + ", " + endPos.y + ")");
  140.             // hid.swip(startPos.x, startPos.y, endPos.x, endPos.y, 50, 500, 1); // 实际滑动操作
  141.             break;
  142.             
  143.         case "输入":
  144.             var texts = ["Hello", "World", "AIWork", "Automation"];
  145.             var text = randChoice(texts);
  146.             printl("随机输入文本: " + text);
  147.             // hid.inputSimple(text); // 实际输入操作
  148.             break;
  149.             
  150.         case "等待":
  151.             var waitTime = randInt(1000, 3000);
  152.             printl("随机等待: " + waitTime + "毫秒");
  153.             // sleep.millisecond(waitTime); // 实际等待操作
  154.             break;
  155.     }
  156. }

  157. // 执行模拟示例
  158. simulateRandomUserActions();

  159. printl("=== 随机数方法示例结束 ===");

  160. // ... existing code ...
复制代码
&#128204;GQGqcAlZv2随机字符
类别
详情
功能描述
生成指定长度的随机字符
方法声明
String GQGqcAlZv2(Int32 length)
返回值类型
String(生成的随机字符)
参数说明
- Int32 length:需要生成的随机字符长度
调用案例
1. 生成 10 位随机字符:var randomStr = GQGqcAlZv2 (10);
2. 生成 5 位随机字符:var shortRandomStr = GQGqcAlZv2 (5);
3. 在配置中使用:config.setConfig ("random_device_id", GQGqcAlZv2 (16));
&#128204;WBJqf91s7J随机整数
类别
详情
功能描述
随机整数
方法声明
Int32 WBJqf91s7J(Int32, Int32)
返回值类型
Int32
参数说明
Int32:起始;Int32:结束
调用案例
rand.randNumber(1000,9999)
&#128204;LtUqFOGkc6随机小数
类别
详情
功能描述
生成指定范围内的随机小数
方法声明
Double LtUqFOGkc6(Double min, Double max)
返回值类型
Double(生成的随机小数)
参数说明
- Double min:随机小数的最小值
- Double max:随机小数的最大值
调用案例
1. 生成 0-1 之间的随机小数:var randomDecimal1 = LtUqFOGkc6 (0, 1);
2. 生成 10-100 之间的随机小数:var randomDecimal2 = LtUqFOGkc6 (10, 100);
3. 生成 1.5-3.5 秒的随机延迟:var delayTime = LtUqFOGkc6 (1.5, 3.5);
4. 生成随机坐标:var x = LtUqFOGkc6 (100.0, 500.0); var y = LtUqFOGkc6 (200.0, 800.0);
5. 生成随机 OCR 区域:var left = LtUqFOGkc6 (0.1, 0.3); (top、right、bottom 类似)
&#128204;随机布尔值生成函数
类别
详情说明
函数名称
randBool
方法功能
生成随机布尔值 (true/false)
方法签名
Boolean randBool()
返回值
Boolean(生成的随机布尔值)
参数
函数名称
randBoolWithProbability
方法功能
根据指定概率生成随机布尔值
方法签名
Boolean randBoolWithProbability(Double probability)
返回值
Boolean(生成的随机布尔值)
参数
- Double probability:返回 true 的概率(0.0 到 1.0 之间)
应用场景
示例代码
说明
基本随机布尔值生成
var randomBoolean1 = randBool();
生成一个随机布尔值
生成多个随机布尔值
for (var i = 0; i < 5; i++) {
printl ("随机布尔值" + (i+1) + ":" + randBool ());
}
循环生成 5 个随机布尔值
带概率的随机布尔值
printl ("30% 概率为 true:" + randBoolWithProbability (0.3));
printl ("70% 概率为 true:" + randBoolWithProbability (0.7));
printl ("90% 概率为 true:" + randBoolWithProbability (0.9));
按照指定概率生成布尔值
随机决定操作执行
function maybePerformAction() {
if (randBool()) {
printl ("执行操作 A");
// 执行操作 A 的代码
} else {
printl ("执行操作 B");
// 执行操作 B 的代码
}
}
50% 概率执行操作 A,50% 概率执行操作 B
基于概率决定功能启用
function checkFeatureEnabled() {
// 假设新功能有 20% 的概率启用
var isNewFeatureEnabled = randBoolWithProbability(0.2);
if (isNewFeatureEnabled) {
printl ("新功能已启用");
// 启用新功能的代码
} else {
printl ("使用默认功能");
// 使用默认功能的代码
}
}
20% 概率启用新功能,80% 概率使用默认功能
随机错误模拟
function simulateRandomError() {
// 假设有 10% 的概率出现错误
if (randBoolWithProbability(0.1)) {
printl ("模拟错误发生");
// 错误处理代码
return false;
}
printl ("操作成功");
return true;
}
10% 概率模拟错误发生,90% 概率操作成功
随机化用户行为
function simulateUserBehavior() {
printl ("模拟用户行为:");
// 用户有 70% 的概率点击按钮
if (randBoolWithProbability(0.7)) {
printl ("用户点击了按钮");
} else {
printl ("用户未点击按钮");
}
// 用户有 30% 的概率输入内容
if (randBoolWithProbability(0.3)) {
printl ("用户输入了内容");
} else {
printl ("用户未输入内容");
}
// 用户有 50% 的概率继续操作
if (randBool()) {
printl ("用户继续下一步操作");
} else {
printl ("用户退出操作");
}
}
模拟不同概率的用户交互行为
配置随机化
function setRandomConfigurations() {
printl ("设置随机配置:");
// 随机启用日志
var enableLogging = randBool();
config.setConfig("enable_logging", enableLogging.toString());
printl ("日志启用:" + enableLogging);
// 随机启用调试模式(20% 概率)
var debugMode = randBoolWithProbability(0.2);
config.setConfig("debug_mode", debugMode.toString());
printl ("调试模式:" + debugMode);
// 随机选择主题
var darkTheme = randBool();
config.setConfig("dark_theme", darkTheme.toString());
printl ("深色主题:" + darkTheme);
}
随机配置系统参数,包括日志、调试模式和主题等
随机化自动化脚本行为
function randomAutomationBehavior() {
printl ("随机自动化行为:");
// 随机决定是否进行 OCR 识别
if (randBool()) {
printl ("执行 OCR 识别");
// OCR 识别代码
// var ocrResult = screen.ocr(0, 0, 1, 1);
} else {
printl ("跳过 OCR 识别");
}
// 随机决定是否截图
if (randBoolWithProbability(0.8)) {
printl ("执行截图");
// 截图代码
// var screenshot = screen.screenShotFull();
} else {
printl ("跳过截图");
}
// 随机决定是否发送网络请求
if (randBool()) {
printl ("发送网络请求");
// 网络请求代码
// var response = new OkHttp().get('https://example.com/api
');
} else {
printl ("跳过网络请求");
}
}
&#128204;随机数组元素选择函数
类别
详情说明
函数名称
randArrayElement
方法功能
从数组中随机选择一个元素
方法签名
Object randArrayElement(Array array)
返回值
Object(数组中的随机元素)
参数
- Array array:源数组
函数名称
randArrayElements
方法功能
从数组中随机选择指定数量的元素
方法签名
Array randArrayElements(Array array, Int32 count)
返回值
Array(包含随机选择元素的数组)
参数
- Array array:源数组 - Int32 count:需要选择的元素数量
使用示例表
应用场景
示例代码
说明
基本使用示例
var colors = ["红色", "绿色", "蓝色", "黄色", "紫色"]; var randomColor = randArrayElement(colors); printl ("从颜色数组中随机选择:" + randomColor);
从颜色数组中随机选择一个元素
多次随机选择示例
printl ("连续 3 次随机选择颜色:"); for (var i = 0; i < 3; i++) { printl ("第" + (i+1) + "次选择:" + randArrayElement (colors)); }
循环 3 次从颜色数组中随机选择元素
随机选择多个元素示例
var selectedColors = randArrayElements(colors, 3); printl ("随机选择 3 种颜色:" + selectedColors.join (","));
从颜色数组中随机选择 3 个不重复的元素
随机选择应用进行操作
function randomAppOperation() { var apps = ["微信", "QQ", "淘宝", "微博", "抖音", "快手"]; var selectedApp = randArrayElement(apps); printl ("随机选择操作应用:" + selectedApp); //app.openApp (selectedApp); // 实际启动应用 }
随机选择一个应用进行操作
随机选择网络请求方法
function randomHttpRequest() { var methods = ["GET", "POST", "PUT", "DELETE", "PATCH"]; var urls = [ "https://api.example.com/users
", "https://api.example.com/products
", "https://api.example.com/orders
" ]; var method = randArrayElement(methods); var url = randArrayElement(urls); printl ("随机 HTTP 请求:" + method + " " + url); // var response = new OkHttp()method.toLowerCase()
; // 实际发送请求 }
随机组合 HTTP 请求方法和 URL 地址
随机选择 OCR 识别区域
function randomOCRRegion() { var regions = [ [0, 0, 0.5, 0.5], // 左上角区域 [0.5, 0, 1, 0.5], // 右上角区域 [0, 0.5, 0.5, 1], // 左下角区域 [0.5, 0.5, 1, 1], // 右下角区域 [0.25, 0.25, 0.75, 0.75] // 中心区域 ]; var region = randArrayElement(regions); printl ("随机 OCR 识别区域: [" + region.join (",") + "]"); return region; }
从预设的区域中随机选择一个作为 OCR 识别区域
随机选择点击策略
function randomClickStrategy() { var strategies = [ function () { printl ("执行普通点击"); }, function () { printl ("执行双击操作"); }, function () { printl ("执行长按操作"); }, function () { printl ("执行滑动操作"); } ]; var strategy = randArrayElement(strategies); strategy (); // 执行选中的策略 }
随机选择一种交互操作策略并执行
随机选择测试数据
function getRandomTestData() { var usernames = ["user123", "testuser", "demoaccount", "sampleuser"]; var passwords = ["password123", "testpass", "demo123", "samplepass"]; var emails = ["user@example.com", "test@mail.com", "demo@test.com"]; var userData = { username: randArrayElement(usernames), password: randArrayElement(passwords), email: randArrayElement(emails) }; printl ("随机测试数据:" + JSON.stringify (userData)); return userData; }
从不同数组中随机选择数据组合成测试用户信息
&#128204;随机日期
类别
详情说明
函数名称
randomDate
方法功能
生成指定范围内的随机日期
方法签名
Date randomDate(Date startDate, Date endDate)
返回值
Date(生成的随机日期)
参数
- Date startDate:随机日期的开始范围 - Date endDate:随机日期的结束范围
函数名称
randomDateString
方法功能
生成指定格式的随机日期字符串
方法签名
String randomDateString(Date startDate, Date endDate, String format)
返回值
String(生成的随机日期字符串)
参数
- Date startDate:随机日期的开始范围 - Date endDate:随机日期的结束范围 - String format:日期格式(如:"yyyy-MM-dd"、"yyyy/MM/dd HH:mm:ss")
函数名称
formatDate
方法功能
将日期对象格式化为指定格式的字符串
方法签名
String formatDate(Date date, String format)
返回值
String(格式化后的日期字符串)
参数
- Date date:要格式化的日期对象 - String format:日期格式(如:"yyyy-MM-dd"、"yyyy/MM/dd HH:mm:ss")
使用示例表
应用场景
示例代码
说明
基本随机日期生成示例
var startDate = new Date (2020, 0, 1); // 2020 年 1 月 1 日 var endDate = new Date (2025, 11, 31); // 2025 年 12 月 31 日 var randomDateResult = randomDate(startDate, endDate); printl ("生成随机日期:" + randomDateResult);
生成 2020-2025 年间的随机日期
随机日期字符串示例
var randomDateStringResult = randomDateString(startDate, endDate, "yyyy-MM-dd"); printl ("生成随机日期字符串 (yyyy-MM-dd):" + randomDateStringResult); var randomDateTimeString = randomDateString(startDate, endDate, "yyyy/MM/dd HH:mm:ss"); printl ("生成随机日期时间字符串:" + randomDateTimeString);
生成指定格式的随机日期字符串,支持 "yyyy-MM-dd" 和 "yyyy/MM/dd HH:mm:ss" 等格式
多次生成随机日期示例
printl ("连续生成 5 个随机日期:"); for (var i = 0; i < 5; i++) { var date = randomDate(startDate, endDate); printl ("随机日期" + (i+1) + ":" + formatDate (date, "yyyy-MM-dd HH:mm:ss")); }
循环生成 5 个指定范围内的随机日期并格式化输出
随机生成用户注册日期
function generateRandomUserRegistration() { var now = new Date(); var oneYearAgo = new Date(); oneYearAgo.setFullYear(now.getFullYear() - 1); var registrationDate = randomDate(oneYearAgo, now); printl ("用户随机注册日期:" + formatDate (registrationDate, "yyyy-MM-dd HH:mm:ss")); return registrationDate; }
生成近一年内的随机用户注册日期
随机生成订单日期
function generateRandomOrderDate() { var now = new Date(); var threeMonthsAgo = new Date(); threeMonthsAgo.setMonth(now.getMonth() - 3); var orderDate = randomDate(threeMonthsAgo, now); printl ("订单随机日期:" + formatDate (orderDate, "yyyy-MM-dd")); return orderDate; }
生成近三个月内的随机订单日期
随机生成生日
function generateRandomBirthday() { var startBirthday = new Date (1980, 0, 1); // 1980 年 1 月 1 日 var endBirthday = new Date (2005, 11, 31); // 2005 年 12 月 31 日 var birthday = randomDate(startBirthday, endBirthday); printl ("随机生日:" + formatDate (birthday, "yyyy-MM-dd")); return birthday; }
生成 1980-2005 年间的随机生日日期
随机生成日志时间
function generateRandomLogTime() { var now = new Date(); var oneWeekAgo = new Date(); oneWeekAgo.setDate(now.getDate() - 7); var logTime = randomDate(oneWeekAgo, now); printl ("日志随机时间:" + formatDate (logTime, "yyyy-MM-dd HH:mm:ss.SSS")); return logTime; }
生成近一周内的随机日志时间,精确到毫秒
随机生成项目开始和结束日期
function generateRandomProjectDates() { var now = new Date(); var oneYearLater = new Date(); oneYearLater.setFullYear(now.getFullYear() + 1); var projectStart = randomDate(now, oneYearLater); var projectEnd = new Date(projectStart); projectEnd.setMonth (projectStart.getMonth () + Math.floor (Math.random () * 12) + 1); // 1-12 个月后结束 printl ("项目开始日期:" + formatDate (projectStart, "yyyy-MM-dd")); printl ("项目结束日期:" + formatDate (projectEnd, "yyyy-MM-dd")); return {start: projectStart, end: projectEnd}; }
生成未来一年内的项目开始日期,以及 1-12 个月后的结束日期
随机生成历史事件日期
function generateRandomHistoricalDate() { var startDate = new Date (2000, 0, 1); // 2000 年 1 月 1 日 var endDate = new Date (); // 今天 var historicalDate = randomDate(startDate, endDate); printl ("随机历史事件日期:" + formatDate (historicalDate, "yyyy 年 MM 月 dd 日")); return historicalDate; }
生成 2000 年至今的随机历史事件日期,使用中文格式输出
类别
详情说明
函数名称
randomColor
方法功能
生成随机颜色值
方法签名
String randomColor()
返回值
String(十六进制颜色值,格式为 #RRGGBB)
参数
函数名称
randomRGBColor
方法功能
生成随机 RGB 颜色值
方法签名
Object randomRGBColor()
返回值
Object(包含 r、g、b 属性的对象,每个属性值范围为 0-255)
参数
函数名称
randomRGBAColor
方法功能
生成随机 RGBA 颜色值
方法签名
Object randomRGBAColor()
返回值
Object(包含 r、g、b、a 属性的对象,r/g/b 范围 0-255,a 范围 0.00-1.00)
参数
函数名称
randomHSLColor
方法功能
生成随机 HSL 颜色值
方法签名
Object randomHSLColor()
返回值
Object(包含 h、s、l 属性的对象,h 范围 0-360,s/l 范围 0-100%)
参数
使用示例表使用示例表
应用场景
示例代码
说明
基本随机十六进制颜色生成
var randomHexColor = randomColor();
printl ("生成随机十六进制颜色:" + randomHexColor);
生成格式为 #RRGGBB 的随机十六进制颜色值
基本随机 RGB 颜色生成
var randomRGB = randomRGBColor();
printl ("生成随机 RGB 颜色: rgb (" + randomRGB.r + "," + randomRGB.g + "," + randomRGB.b + ")");
生成包含 r、g、b 属性的 RGB 颜色对象,并以rgb(r, g, b)
格式输出
基本随机 RGBA 颜色生成
var randomRGBA = randomRGBAColor();
printl ("生成随机 RGBA 颜色: rgba (" + randomRGBA.r + "," + randomRGBA.g + "," + randomRGBA.b + "," + randomRGBA.a + ")");
生成包含 r、g、b、a 属性的 RGBA 颜色对象,并以rgba(r, g, b, a)
格式输出
基本随机 HSL 颜色生成
var randomHSL = randomHSLColor();
printl ("生成随机 HSL 颜色: hsl (" + randomHSL.h + "," + randomHSL.s + "%," + randomHSL.l + "%)");
生成包含 h、s、l 属性的 HSL 颜色对象,并以hsl(h, s%, l%)
格式输出
多次生成随机颜色
printl ("连续生成 5 个随机颜色:");
for (var i = 0; i < 5; i++) {
printl ("随机颜色" + (i+1) + ":" + randomColor ());
}
循环生成 5 个随机十六进制颜色值并输出
随机设置界面主题色
function setRandomThemeColor() {
var themeColor = randomColor();
printl ("设置随机主题色:" + themeColor);
// 在实际应用中,可以将这个颜色应用到界面元素上
return themeColor;
}
生成随机十六进制颜色作为界面主题色
随机生成图表颜色
function generateChartColors(count) {
var colors = [];
for (var i = 0; i < count; i++) {
colors.push(randomColor());
}
printl ("生成图表颜色:" + colors.join (","));
return colors;
}
根据传入的数量,生成对应个数的随机十六进制颜色数组(用于图表系列配色)
随机生成按钮样式(背景 + 文字色)
function generateRandomButtonStyles() {
var bgColor = randomColor();
var textColor = randomColor();
printl ("按钮背景色:" + bgColor + ", 文字颜色:" + textColor);
// 在实际应用中,可以用于设置按钮样式
return {backgroundColor: bgColor, textColor: textColor};
}
生成随机的按钮背景色和文字色组合,返回样式对象
随机生成渐变色
function generateRandomGradient() {
var color1 = randomColor();
var color2 = randomColor();
var gradient = "linear-gradient(45deg, " + color1 + ", " + color2 + ")";
printl ("生成随机渐变:" + gradient);
return gradient;
}
生成 45 度角的线性渐变色,使用两个随机十六进制颜色作为渐变起点和终点
随机生成半透明颜色
function generateRandomTransparentColor() {
var baseColor = randomColor();
var alpha = (Math.random () * 0.8 + 0.2).toFixed (2); // 0.2-1.0 之间的透明度
var transparentColor = baseColor + Math.floor(alpha * 255).toString(16);
printl ("基础颜色:" + baseColor + ", 透明度:" + alpha + ", 半透明颜色:" + transparentColor);
return transparentColor;
}
基于随机十六进制颜色,生成透明度 0.2-1.0 的半透明颜色(格式 #RRGGBBAA)
随机生成柔和颜色(低饱和度)
function generateRandomSoftColor() {
var h = Math.floor(Math.random() * 361);
var s = Math.floor (Math.random () * 31); // 0-30% 饱和度,确保颜色柔和
var l = Math.floor (Math.random () * 41) + 30; // 30-70% 亮度,确保颜色不会太暗或太亮
var hsl = "hsl(" + h + ", " + s + "%, " + l + "%)";
printl ("生成随机柔和颜色:" + hsl);
return hsl;
}
&#128204;随机UUID生成函数
函数说明表
类别
详情说明
函数名称
randomUUID
方法功能
生成随机 UUID(通用唯一识别码)
方法签名
String randomUUID()
返回值
String(UUID 字符串,格式为 xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx)
参数
函数名称
simpleUUID
方法功能
生成简单的 UUID(只包含数字和字母)
方法签名
String simpleUUID()
返回值
String(32 位 UUID 字符串)
参数
使用示例表
应用场景
示例代码
说明
标准 UUID 生成示例
var uuid = randomUUID();
printl ("生成标准 UUID:" + uuid);
生成符合标准格式(带连字符)的 UUID 字符串
简单 UUID 生成示例
var simpleUuid = simpleUUID();
printl ("生成简单 UUID:" + simpleUuid);
生成 32 位无连字符的简单 UUID 字符串(仅包含数字和字母)
多次生成随机 UUID 示例
printl ("连续生成 5 个随机 UUID:");
for (var i = 0; i < 5; i++) {
printl(" UUID " + (i+1) + ": " + randomUUID());
}
循环生成 5 个标准格式的 UUID 并输出
生成设备唯一标识符
function generateDeviceId() {
var deviceId = randomUUID();
printl ("生成设备 ID:" + deviceId);
return deviceId;
}
使用标准 UUID 生成设备唯一标识符
生成会话 ID
function generateSessionId() {
var sessionId = randomUUID();
printl ("生成会话 ID:" + sessionId);
return sessionId;
}
使用标准 UUID 生成用户会话唯一标识
生成事务 ID
function generateTransactionId() {
var transactionId = simpleUUID();
printl ("生成事务 ID:" + transactionId);
return transactionId;
}
使用简单 UUID 生成交易事务唯一标识
生成 API 请求 ID
function generateRequestId() {
var requestId = randomUUID();
printl ("生成请求 ID:" + requestId);
return requestId;
}
使用标准 UUID 生成 API 请求唯一标识,用于追踪请求
生成文件唯一标识符
function generateFileId() {
var fileId = simpleUUID();
printl ("生成文件 ID:" + fileId);
return fileId;
}
使用简单 UUID 生成文件唯一标识,适合作为文件名或存储标识
生成用户临时标识符
function generateTempUserId() {
var tempUserId = randomUUID();
printl ("生成临时用户 ID:" + tempUserId);
return tempUserId;
}
使用标准 UUID 生成未登录用户的临时标识
生成订单号(带 UUID)
function generateOrderNumber() {
var timestamp = new Date().getTime();
var uuidPart = simpleUUID().substr(0, 8);
var orderNumber = "ORD" + timestamp + uuidPart.toUpperCase();
printl ("生成订单号:" + orderNumber);
return orderNumber;
}
结合时间戳和简单 UUID 前 8 位生成订单号,兼具唯一性和时间关联性
生成随机密码重置令牌
function generateResetToken() {
var resetToken = randomUUID();
printl ("生成密码重置令牌:" + resetToken);
return resetToken;
}
使用标准 UUID 生成密码重置链接中的唯一令牌,确保安全性
&#128204;随机密码 / 验证码
[color=var(--md-box-samantha-deep-text-color) !important]随机密码 / 验证码生成函数及使用说明[color=var(--md-box-samantha-deep-text-color) !important]函数说明表
类别
详情说明
函数名称
randomPassword
方法功能
生成指定长度的随机密码,可自定义包含的字符类型
方法签名
String randomPassword(Int32 length, Boolean includeUppercase, Boolean includeLowercase, Boolean includeNumbers, Boolean includeSymbols)
返回值
String(生成的随机密码)
参数
- Int32 length:密码长度
- Boolean includeUppercase:是否包含大写字母
- Boolean includeLowercase:是否包含小写字母
- Boolean includeNumbers:是否包含数字
- Boolean includeSymbols:是否包含特殊符号(!@#$%^&*()_+-=[]{}
;:,.<>?)
函数名称
randomVerificationCode
方法功能
生成指定长度的随机验证码,默认包含数字和大写字母
方法签名
String randomVerificationCode(Int32 length)
返回值
String(生成的随机验证码)
参数
- Int32 length:验证码长度
函数名称
randomNumericCode
方法功能
生成指定长度的纯数字验证码
方法签名
String randomNumericCode(Int32 length)
返回值
String(生成的纯数字验证码)
参数
- Int32 length:验证码长度
函数名称
randomAlphaCode
方法功能
生成指定长度的纯字母验证码,支持区分大小写
方法签名
String randomAlphaCode(Int32 length, Boolean caseSensitive)
返回值
String(生成的纯字母验证码)
参数
- Int32 length:验证码长度
- Boolean caseSensitive:是否区分大小写(true = 区分大小写,false = 仅大写字母)
[color=var(--md-box-samantha-deep-text-color) !important]使用示例表
应用场景
示例代码
说明
生成复杂密码(12 位,全字符类型)
var password1 = randomPassword(12, true, true, true, true);
printl ("生成 12 位复杂密码:" + password1);
生成包含大写字母、小写字母、数字、特殊符号的 12 位复杂密码
生成字母数字密码(8 位)
var password2 = randomPassword(8, true, true, true, false);
printl ("生成 8 位字母数字密码:" + password2);
生成包含大小写字母、数字(无特殊符号)的 8 位密码
生成小写字母数字密码(6 位)
var password3 = randomPassword(6, false, true, true, false);
printl ("生成 6 位小写字母数字密码:" + password3);
生成包含小写字母、数字(无大写、无特殊符号)的 6 位密码
生成 6 位混合验证码(数字 + 大写)
var verificationCode1 = randomVerificationCode(6);
printl ("生成 6 位验证码:" + verificationCode1);
生成包含数字和大写字母的 6 位通用验证码
生成 4 位混合验证码(数字 + 大写)
var verificationCode2 = randomVerificationCode(4);
printl ("生成 4 位验证码:" + verificationCode2);
生成包含数字和大写字母的 4 位通用验证码
生成 6 位纯数字验证码
var numericCode = randomNumericCode(6);
printl ("生成 6 位纯数字验证码:" + numericCode);
生成仅含数字的 6 位验证码(常用于短信、语音验证)
生成 6 位纯大写字母验证码
var alphaCode1 = randomAlphaCode(6, false);
printl ("生成 6 位大写字母验证码:" + alphaCode1);
生成仅含大写字母的 6 位验证码(不区分大小写)
生成 6 位大小写混合字母验证码
var alphaCode2 = randomAlphaCode(6, true);
printl ("生成 6 位大小写混合字母验证码:" + alphaCode2);
生成包含大小写字母的 6 位验证码(区分大小写)
连续生成 3 个 10 位字母数字密码
printl ("连续生成 3 个随机密码:");
for (var i = 0; i < 3; i++) {
printl ("密码" + (i+1) + ":" + randomPassword (10, true, true, true, false));
}
循环生成 3 个包含大小写字母、数字的 10 位密码
用户注册初始密码生成
function generateInitialPassword() {
var password = randomPassword(10, true, true, true, false);
printl ("生成初始密码:" + password);
return password;
}
生成 10 位字母数字组合的初始密码(用于新用户注册默认密码)
短信验证码生成
function generateSMSCode() {
var smsCode = randomNumericCode(6);
printl ("生成短信验证码:" + smsCode);
return smsCode;
}
生成 6 位纯数字短信验证码(符合主流平台短信验证格式)
邮箱验证令牌生成
function generateEmailVerificationToken() {
var token = randomVerificationCode(32);
printl ("生成邮箱验证令牌:" + token);
return token;
}
生成 32 位数字 + 大写字母的邮箱验证令牌(用于邮箱激活链接)
临时访问密码生成
function generateTempPassword() {
var tempPassword = randomPassword(8, true, true, true, false);
printl ("生成临时密码:" + tempPassword);
return tempPassword;
}
生成 8 位字母数字组合的临时密码(用于密码找回临时登录)
图形验证码文本生成
function generateCaptchaText() {
var captcha = randomAlphaCode(4, true);
printl ("生成图形验证码:" + captcha);
return captcha;
}
生成 4 位大小写混合字母的图形验证码文本(用于网页图形验证)
API 密钥生成
function generateAPIKey() {
var apiKey = randomPassword(32, true, true, true, false);
printl ("生成 API 密钥:" + apiKey);
return apiKey;
}
生成 32 位字母数字组合的 API 密钥(用于接口访问身份验证)
安全令牌生成
function generateSecurityToken() {
var token = randomVerificationCode(64);
printl ("生成安全令牌:" + token);
return token;
}
生成 64 位数字 + 大写字母的安全令牌(用于高安全性场景身份校验)
随机盐值生成
function generateSalt() {
var salt = randomPassword(16, true, true, true, true);
printl ("生成随机盐值:" + salt);
return salt;
}
生成 16 位包含大小写、数字、特殊符号的盐值(用于密码加密存储)
&#128204;随机数组排序(洗牌算法)
[color=var(--md-box-samantha-deep-text-color) !important]函数说明表
类别
详情说明
函数名称
shuffle
方法功能
使用Fisher-Yates 洗牌算法对数组进行随机排序,生成新数组(不修改原数组)
方法签名
Array shuffle(Array array)
返回值
Array(随机排序后的新数组)
参数
- Array array:需要随机排序的源数组
函数名称
shuffleInPlace
方法功能
使用Fisher-Yates 洗牌算法对数组进行原地随机排序(直接修改原数组)
方法签名
Void shuffleInPlace(Array array)
返回值
Void(无返回值,排序后结果直接作用于输入数组)
参数
- Array array:需要随机排序的源数组(将被直接修改)
[color=var(--md-box-samantha-deep-text-color) !important]使用示例表
应用场景
示例代码
说明
基本洗牌示例(不修改原数组)
var numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
printl ("原始数组:" + numbers.join (","));

var shuffledNumbers = shuffle(numbers);
printl ("洗牌后数组:" + shuffledNumbers.join (","));
printl ("原数组未变:" + numbers.join (","));
通过shuffle
生成新数组,原数组numbers
保持初始顺序,适合需保留源数据的场景
原地洗牌示例(修改原数组)
var colors = ["红色", "绿色", "蓝色", "黄色", "紫色", "橙色"];
printl ("原始颜色数组:" + colors.join (","));

shuffleInPlace(colors);
printl ("原地洗牌后:" + colors.join (","));
通过shuffleInPlace
直接修改原数组colors
,无需额外存储新数组,适合内存敏感场景
多次洗牌示例
var cards = ["A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"];
printl ("原始牌组:" + cards.join (","));

printl ("多次洗牌结果:");
for (var i = 0; i < 3; i++) {
var shuffledCards = shuffle(cards);
printl ("第" + (i+1) + "次洗牌:" + shuffledCards.join (","));
}
对同一源数组(牌组)多次调用shuffle
,每次生成独立的随机排序结果,模拟真实洗牌场景
随机播放列表
function shufflePlaylist(songs) {
printl ("原始播放列表:" + songs.join ("->"));
var shuffledSongs = shuffle(songs);
printl ("随机播放列表:" + shuffledSongs.join ("->"));
return shuffledSongs;
}

printl ("播放列表随机排序:");
var playlist = ["歌曲 1", "歌曲 2", "歌曲 3", "歌曲 4", "歌曲 5"];
shufflePlaylist(playlist);
打乱歌曲顺序生成随机播放列表,保留原始列表不被修改
随机抽取题目
function randomizeQuestions(questions) {
printl ("原始题目顺序:" + questions.join (","));
var randomizedQuestions = shuffle(questions);
printl ("随机题目顺序:" + randomizedQuestions.join (","));
return randomizedQuestions;
}

printl ("题目随机排序:");
var examQuestions = ["选择题 1", "选择题 2", "填空题 1", "填空题 2", "简答题"];
randomizeQuestions(examQuestions);
打乱题目顺序,用于考试、问卷等场景,避免固定顺序影响结果
随机分配任务
function assignTasksRandomly(tasks, people) {
printl ("原始任务列表:" + tasks.join (","));
printl ("参与人员列表:" + people.join (","));
var shuffledTasks = shuffle(tasks);
var assignments = {};
for (var i = 0; i < people.length; i++) {
var person = people;
var taskIndex = i % shuffledTasks.length;
assignments[person] = shuffledTasks[taskIndex];
}
printl ("随机任务分配结果:");
for (var person in assignments) {
printl(" " + person + " -> " + assignments[person]);
}
return assignments;
}

printl ("任务随机分配:");
var taskList = ["任务 A", "任务 B", "任务 C", "任务 D"];
var teamMembers = ["张三", "李四", "王五", "赵六"];
assignTasksRandomly(taskList, teamMembers);
先打乱任务顺序,再按人员列表分配任务,实现公平随机的任务分发
随机抽奖
function lottery(participants, prizeCount) {
printl ("参与抽奖人员:" + participants.join (","));
printl ("奖品数量:" + prizeCount);
var shuffledParticipants = shuffle(participants);
var winners = shuffledParticipants.slice(0, prizeCount);
printl ("中奖人员:" + winners.join (","));
return winners;
}

printl ("随机抽奖:");
var participants = ["用户 A", "用户 B", "用户 C", "用户 D", "用户 E", "用户 F", "用户 G"];
lottery(participants, 3);
打乱参与人员顺序,取前 N 名作为中奖者,确保抽奖公平性
随机测试数据生成
function generateRandomTestData(items) {
printl ("原始测试数据:" + items.join (","));
var testDataSets = [];
for (var i = 0; i < 5; i++) {
var shuffledData = shuffle(items);
testDataSets.push(shuffledData);
printl ("测试数据集" + (i+1) + ":" + shuffledData.join (","));
}
return testDataSets;
}

printl ("随机测试数据生成:");
var testData = ["数据 1", "数据 2", "数据 3", "数据 4", "数据 5"];
generateRandomTestData(testData);
生成多组不同顺序的测试数据,用于验证算法对数据顺序的鲁棒性
游戏地图随机化
function randomizeGameMap(rooms) {
printl ("原始房间顺序:" + rooms.join ("->"));
var randomizedRooms = shuffle(rooms);
printl ("随机房间顺序:" + randomizedRooms.join ("->"));
return randomizedRooms;
}

printl ("游戏地图随机化:");
var gameRooms = ["起始房间", "怪物房间", "宝藏房间", "商店房间", "Boss 房间"];
randomizeGameMap(gameRooms);
打乱游戏房间顺序,生成随机地图路径,提升游戏可玩性
多个例子全部集合在一起:
  1. /**
  2. * 随机数工具类 - 整合所有随机相关功能
  3. * 包含:基础随机值、坐标、数组、日期、颜色、UUID、密码验证码、洗牌算法等
  4. * 交流QQ群:711841924(苹果内测群一)、528816639
  5. */
  6. const RandomUtils = {
  7.   // ========================== 1. 基础随机值生成 ==========================
  8.   /**
  9.    * LtUqFOGkc6 - 生成指定范围的随机小数
  10.    * @param {number} min - 最小值(包含)
  11.    * @param {number} max - 最大值(包含)
  12.    * @returns {number} 随机小数
  13.    */
  14.   LtUqFOGkc6(min, max) {
  15.     return Math.random() * (max - min) + min;
  16.   },

  17.   /**
  18.    * randInt / WBJqf91s7J - 生成指定范围的随机整数(两个函数功能一致,统一实现)
  19.    * @param {number} min - 最小值(包含)
  20.    * @param {number} max - 最大值(包含)
  21.    * @returns {number} 随机整数
  22.    */
  23.   randInt(min, max) {
  24.     // 修正:确保参数是整数并正确处理边界
  25.     min = Math.ceil(min);
  26.     max = Math.floor(max);
  27.     return Math.floor(Math.random() * (max - min + 1)) + min;
  28.   },
  29.   WBJqf91s7J: function (min, max) { // 兼容原命名
  30.     return this.randInt(min, max);
  31.   },

  32.   /**
  33.    * randBool - 生成 50% 概率的随机布尔值
  34.    * @returns {boolean} true/false
  35.    */
  36.   randBool() {
  37.     return Math.random() < 0.5;
  38.   },

  39.   /**
  40.    * randBoolWithProbability - 按指定概率生成布尔值
  41.    * @param {number} probability - 返回 true 的概率(0.0 ~ 1.0)
  42.    * @returns {boolean} 按概率生成的布尔值
  43.    */
  44.   randBoolWithProbability(probability) {
  45.     // 边界值处理:确保概率在合法范围
  46.     probability = Math.max(0, Math.min(1, probability));
  47.     return Math.random() < probability;
  48.   },

  49.   /**
  50.    * GQGqcAlZv2 - 生成指定长度的随机字符(字母+数字)
  51.    * @param {number} length - 字符长度(正整数)
  52.    * @returns {string} 随机字符串
  53.    */
  54.   GQGqcAlZv2(length) {
  55.     if (length <= 0) return "";
  56.     const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
  57.     let result = "";
  58.     for (let i = 0; i < length; i++) {
  59.       const randomIndex = this.randInt(0, chars.length - 1);
  60.       result += chars[randomIndex];
  61.     }
  62.     return result;
  63.   },


  64.   // ========================== 2. 坐标与区域随机 ==========================
  65.   /**
  66.    * randClickPosition - 在指定区域内生成随机点击坐标
  67.    * @param {number} left - 左边界
  68.    * @param {number} top - 上边界
  69.    * @param {number} right - 右边界
  70.    * @param {number} bottom - 下边界
  71.    * @returns {Object} 包含 x/y 坐标的对象
  72.    */
  73.   randClickPosition(left, top, right, bottom) {
  74.     const x = this.LtUqFOGkc6(left, right);
  75.     const y = this.LtUqFOGkc6(top, bottom);
  76.     return { x: Number(x.toFixed(2)), y: Number(y.toFixed(2)) }; // 保留2位小数,避免精度冗余
  77.   },


  78.   // ========================== 3. 数组随机操作 ==========================
  79.   /**
  80.    * randArrayElement / randChoice - 从数组随机选择1个元素(兼容原命名)
  81.    * @param {Array} arr - 源数组
  82.    * @returns {any|null} 随机元素(数组为空时返回null)
  83.    */
  84.   randArrayElement(arr) {
  85.     if (!Array.isArray(arr) || arr.length === 0) return null;
  86.     const index = this.randInt(0, arr.length - 1);
  87.     return arr[index];
  88.   },
  89.   randChoice: function (arr) {
  90.     return this.randArrayElement(arr);
  91.   },

  92.   /**
  93.    * randArrayElements - 从数组随机选择指定数量的元素(不重复)
  94.    * @param {Array} arr - 源数组
  95.    * @param {number} count - 选择数量
  96.    * @returns {Array} 随机元素数组(数量不足时返回所有元素)
  97.    */
  98.   randArrayElements(arr, count) {
  99.     if (!Array.isArray(arr) || arr.length === 0) return [];
  100.     // 复制数组避免修改原数组,再用洗牌算法截取
  101.     const copyArr = [...arr];
  102.     this.shuffleInPlace(copyArr);
  103.     return copyArr.slice(0, Math.min(count, arr.length));
  104.   },

  105.   /**
  106.    * shuffle - Fisher-Yates洗牌算法(生成新数组,不修改原数组)
  107.    * @param {Array} arr - 源数组
  108.    * @returns {Array} 随机排序后的新数组
  109.    */
  110.   shuffle(arr) {
  111.     if (!Array.isArray(arr)) return [];
  112.     const copyArr = [...arr];
  113.     this.shuffleInPlace(copyArr);
  114.     return copyArr;
  115.   },

  116.   /**
  117.    * shuffleInPlace - Fisher-Yates洗牌算法(原地排序,修改原数组)
  118.    * @param {Array} arr - 源数组(将被直接修改)
  119.    */
  120.   shuffleInPlace(arr) {
  121.     if (!Array.isArray(arr)) return;
  122.     for (let i = arr.length - 1; i > 0; i--) {
  123.       const j = this.randInt(0, i);
  124.       // 交换元素
  125.       [arr[i], arr[j]] = [arr[j], arr[i]];
  126.     }
  127.   },


  128.   // ========================== 4. 日期随机生成 ==========================
  129.   /**
  130.    * formatDate - 日期格式化工具
  131.    * @param {Date} date - 日期对象
  132.    * @param {string} format - 格式(如 "yyyy-MM-dd"、"yyyy/MM/dd HH:mm:ss")
  133.    * @returns {string} 格式化后的日期字符串
  134.    */
  135.   formatDate(date, format) {
  136.     if (!(date instanceof Date)) return "";
  137.     const pad = (num) => num.toString().padStart(2, "0"); // 补零函数
  138.     return format.replace(/yyyy/g, date.getFullYear())
  139.       .replace(/MM/g, pad(date.getMonth() + 1)) // 月份0-11,需+1
  140.       .replace(/dd/g, pad(date.getDate()))
  141.       .replace(/HH/g, pad(date.getHours()))
  142.       .replace(/mm/g, pad(date.getMinutes()))
  143.       .replace(/ss/g, pad(date.getSeconds()))
  144.       .replace(/SSS/g, pad(date.getMilliseconds()).padStart(3, "0"));
  145.   },

  146.   /**
  147.    * randomDate - 生成指定范围的随机日期对象
  148.    * @param {Date} startDate - 开始日期
  149.    * @param {Date} endDate - 结束日期
  150.    * @returns {Date} 随机日期
  151.    */
  152.   randomDate(startDate, endDate) {
  153.     if (!(startDate instanceof Date) || !(endDate instanceof Date)) {
  154.       throw new Error("参数必须是Date对象");
  155.     }
  156.     const startTime = startDate.getTime();
  157.     const endTime = endDate.getTime();
  158.     const randomTime = this.LtUqFOGkc6(startTime, endTime);
  159.     return new Date(randomTime);
  160.   },

  161.   /**
  162.    * randomDateString - 生成指定格式的随机日期字符串
  163.    * @param {Date} startDate - 开始日期
  164.    * @param {Date} endDate - 结束日期
  165.    * @param {string} format - 日期格式
  166.    * @returns {string} 格式化后的随机日期
  167.    */
  168.   randomDateString(startDate, endDate, format) {
  169.     const randomDate = this.randomDate(startDate, endDate);
  170.     return this.formatDate(randomDate, format);
  171.   },


  172.   // ========================== 5. 颜色随机生成 ==========================
  173.   /**
  174.    * randomColor - 生成随机十六进制颜色(#RRGGBB)
  175.    * @returns {string} 十六进制颜色值
  176.    */
  177.   randomColor() {
  178.     const letters = "0123456789ABCDEF";
  179.     let color = "#";
  180.     for (let i = 0; i < 6; i++) {
  181.       color += letters[this.randInt(0, 15)];
  182.     }
  183.     return color;
  184.   },

  185.   /**
  186.    * randomRGBColor - 生成随机RGB颜色
  187.    * @returns {Object} { r: 0-255, g: 0-255, b: 0-255 }
  188.    */
  189.   randomRGBColor() {
  190.     return {
  191.       r: this.randInt(0, 255),
  192.       g: this.randInt(0, 255),
  193.       b: this.randInt(0, 255)
  194.     };
  195.   },

  196.   /**
  197.    * randomRGBAColor - 生成随机RGBA颜色
  198.    * @returns {Object} { r: 0-255, g: 0-255, b: 0-255, a: 0.00-1.00 }
  199.    */
  200.   randomRGBAColor() {
  201.     return {
  202.       ...this.randomRGBColor(),
  203.       a: Number(this.LtUqFOGkc6(0, 1).toFixed(2))
  204.     };
  205.   },

  206.   /**
  207.    * randomHSLColor - 生成随机HSL颜色
  208.    * @returns {Object} { h: 0-360, s: 0-100%, l: 0-100% }
  209.    */
  210.   randomHSLColor() {
  211.     return {
  212.       h: this.randInt(0, 360),
  213.       s: `${this.randInt(0, 100)}%`,
  214.       l: `${this.randInt(0, 100)}%`
  215.     };
  216.   },

  217.   /**
  218.    * generateRandomSoftColor - 生成低饱和度柔和颜色(HSL格式)
  219.    * @returns {string} HSL颜色字符串(如 "hsl(120, 20%, 50%)")
  220.    */
  221.   generateRandomSoftColor() {
  222.     const h = this.randInt(0, 360);
  223.     const s = this.randInt(0, 30); // 0-30% 饱和度(柔和)
  224.     const l = this.randInt(30, 70); // 30-70% 亮度(不暗不亮)
  225.     return `hsl(${h}, ${s}%, ${l}%)`;
  226.   },


  227.   // ========================== 6. UUID 生成 ==========================
  228.   /**
  229.    * randomUUID - 生成标准UUID(格式:xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx)
  230.    * @returns {string} 标准UUID字符串
  231.    */
  232.   randomUUID() {
  233.     return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {
  234.       const r = this.randInt(0, 15); // 修正:使用整数随机数而不是小数
  235.       const v = c === 'x' ? r : (r & 0x3 | 0x8); // y位固定为 0100 或 1000
  236.       return v.toString(16);
  237.     });
  238.   },

  239.   /**
  240.    * simpleUUID - 生成32位简化UUID(无连字符,仅字母+数字)
  241.    * @returns {string} 32位UUID字符串
  242.    */
  243.   simpleUUID() {
  244.     return this.randomUUID().replace(/-/g, '');
  245.   },


  246.   // ========================== 7. 密码与验证码生成 ==========================
  247.   /**
  248.    * randomPassword - 自定义复杂度的随机密码
  249.    * @param {number} length - 密码长度
  250.    * @param {boolean} includeUppercase - 是否包含大写字母
  251.    * @param {boolean} includeLowercase - 是否包含小写字母
  252.    * @param {boolean} includeNumbers - 是否包含数字
  253.    * @param {boolean} includeSymbols - 是否包含特殊符号(!@#$%^&*()_+-=[]{};:,.<>?)
  254.    * @returns {string} 随机密码
  255.    */
  256.   randomPassword(length, includeUppercase, includeLowercase, includeNumbers, includeSymbols) {
  257.     if (length <= 0) return "";
  258.     // 定义字符集
  259.     let chars = "";
  260.     if (includeUppercase) chars += "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  261.     if (includeLowercase) chars += "abcdefghijklmnopqrstuvwxyz";
  262.     if (includeNumbers) chars += "0123456789";
  263.     if (includeSymbols) chars += "!@#$%^&*()_+-=[]{};:,.<>?";
  264.     // 兜底:若未选任何字符集,默认字母+数字
  265.     if (chars === "") chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
  266.    
  267.     let password = "";
  268.     for (let i = 0; i < length; i++) {
  269.       password += chars[this.randInt(0, chars.length - 1)];
  270.     }
  271.     return password;
  272.   },

  273.   /**
  274.    * randomVerificationCode - 混合验证码(数字+大写字母)
  275.    * @param {number} length - 验证码长度
  276.    * @returns {string} 混合验证码
  277.    */
  278.   randomVerificationCode(length) {
  279.     // 修正:根据函数描述,应该是数字+大写字母
  280.     if (length <= 0) return "";
  281.     const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
  282.     let result = "";
  283.     for (let i = 0; i < length; i++) {
  284.       result += chars[this.randInt(0, chars.length - 1)];
  285.     }
  286.     return result;
  287.   },

  288.   /**
  289.    * randomNumericCode - 纯数字验证码
  290.    * @param {number} length - 验证码长度
  291.    * @returns {string} 纯数字验证码
  292.    */
  293.   randomNumericCode(length) {
  294.     if (length <= 0) return "";
  295.     const chars = "0123456789";
  296.     let result = "";
  297.     for (let i = 0; i < length; i++) {
  298.       result += chars[this.randInt(0, chars.length - 1)];
  299.     }
  300.     return result;
  301.   },

  302.   /**
  303.    * randomAlphaCode - 纯字母验证码
  304.    * @param {number} length - 验证码长度
  305.    * @param {boolean} caseSensitive - 是否区分大小写(true=混合,false=仅大写)
  306.    * @returns {string} 纯字母验证码
  307.    */
  308.   randomAlphaCode(length, caseSensitive) {
  309.     if (length <= 0) return "";
  310.     let chars = "";
  311.     if (caseSensitive) {
  312.       // 区分大小写,混合大小写字母
  313.       chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
  314.     } else {
  315.       // 不区分大小写,仅大写字母
  316.       chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  317.     }
  318.    
  319.     let result = "";
  320.     for (let i = 0; i < length; i++) {
  321.       result += chars[this.randInt(0, chars.length - 1)];
  322.     }
  323.     return result;
  324.   },


  325.   // ========================== 8. 综合模拟 ==========================
  326.   /**
  327.    * simulateRandomUserActions - 模拟用户随机操作(点击/滑动/输入/等待)
  328.    */
  329.   simulateRandomUserActions() {
  330.     printl("=== 模拟用户随机操作 ==="); // 修正:使用printl而不是console.log
  331.     const actions = ["点击", "滑动", "输入", "等待"];
  332.     const action = this.randArrayElement(actions);

  333.     switch (action) {
  334.       case "点击":
  335.         const clickPos = this.randClickPosition(0, 0, 1920, 1080); // 假设屏幕1920x1080
  336.         printl("随机点击屏幕位置: (" + clickPos.x + ", " + clickPos.y + ")");
  337.         // 实际项目可添加:hid.click(clickPos.x, clickPos.y);
  338.         break;

  339.       case "滑动":
  340.         const startPos = this.randClickPosition(100, 100, 400, 600);
  341.         const endPos = this.randClickPosition(100, 100, 400, 600);
  342.         printl("随机滑动: (" + startPos.x + ", " + startPos.y + ") → (" + endPos.x + ", " + endPos.y + ")");
  343.         // 实际项目可添加:hid.swip(startPos.x, startPos.y, endPos.x, endPos.y, 500);
  344.         break;

  345.       case "输入":
  346.         const texts = ["Hello", "AIWork", "Automation", "RandomTest"];
  347.         const inputText = this.randArrayElement(texts);
  348.         printl("随机输入文本: " + inputText);
  349.         // 实际项目可添加:hid.inputSimple(inputText);
  350.         break;

  351.       case "等待":
  352.         const waitTime = this.randInt(1000, 3000);
  353.         printl("随机等待: " + waitTime + "ms");
  354.         // 实际项目可添加:sleep.millisecond(waitTime);
  355.         break;
  356.     }
  357.   },

  358.   /**
  359.    * simulateRandomError - 模拟随机错误(10%概率)
  360.    * @returns {boolean} 操作是否成功(true=成功,false=错误)
  361.    */
  362.   simulateRandomError() {
  363.     if (this.randBoolWithProbability(0.1)) {
  364.       printl("[错误模拟] 操作失败(10%概率触发)");
  365.       return false;
  366.     }
  367.     printl("[错误模拟] 操作成功");
  368.     return true;
  369.   },

  370.   /**
  371.    * lottery - 随机抽奖(公平洗牌后取前N名)
  372.    * @param {Array} participants - 参与人员列表
  373.    * @param {number} prizeCount - 奖品数量
  374.    * @returns {Array} 中奖人员列表
  375.    */
  376.   lottery(participants, prizeCount) {
  377.     printl("=== 随机抽奖(参与人数:" + participants.length + ",奖品数:" + prizeCount + ")===");
  378.     const shuffled = this.shuffle(participants);
  379.     const winners = shuffled.slice(0, prizeCount);
  380.     printl("中奖人员: " + winners.join(", "));
  381.     return winners;
  382.   },
  383.   
  384.   /**
  385.    * randNumber - 生成指定范围的随机整数(根据文档中的使用方式)
  386.    * @param {number} min - 最小值
  387.    * @param {number} max - 最大值
  388.    * @returns {number} 随机整数
  389.    */
  390.   randNumber(min, max) {
  391.     // 根据文档中的使用方式实现
  392.     return this.randInt(min, max);
  393.   }
  394. };


  395. // ========================== 测试示例:所有功能的使用演示 ==========================
  396. function testRandomUtils() {
  397.   // 1. 基础随机值测试
  398.   printl("=== 1. 基础随机值测试 ===");
  399.   printl("0-1随机小数: " + RandomUtils.LtUqFOGkc6(0, 1).toFixed(4));
  400.   printl("10-100随机整数: " + RandomUtils.randInt(10, 100));
  401.   printl("50%概率布尔值: " + RandomUtils.randBool());
  402.   printl("30%概率true: " + RandomUtils.randBoolWithProbability(0.3));
  403.   printl("16位随机字符: " + RandomUtils.GQGqcAlZv2(16));
  404.   printl("");

  405.   // 2. 坐标随机测试
  406.   printl("=== 2. 坐标随机测试 ===");
  407.   const clickPos = RandomUtils.randClickPosition(100, 200, 500, 800);
  408.   printl("指定区域随机坐标: " + JSON.stringify(clickPos));
  409.   printl("");

  410.   // 3. 数组随机测试
  411.   printl("=== 3. 数组随机测试 ===");
  412.   const fruits = ["苹果", "香蕉", "橙子", "葡萄", "草莓"];
  413.   printl("随机选1个水果: " + RandomUtils.randArrayElement(fruits));
  414.   printl("随机选3个水果(不重复): " + JSON.stringify(RandomUtils.randArrayElements(fruits, 3)));
  415.   const numbers = [1, 2, 3, 4, 5];
  416.   printl("数组洗牌(新数组): " + JSON.stringify(RandomUtils.shuffle(numbers)));
  417.   printl("原数组是否不变: " + JSON.stringify(numbers)); // [1,2,3,4,5](未修改)
  418.   RandomUtils.shuffleInPlace(numbers);
  419.   printl("数组原地洗牌(修改原数组): " + JSON.stringify(numbers));
  420.   printl("");

  421.   // 4. 日期随机测试
  422.   printl("=== 4. 日期随机测试 ===");
  423.   const startDate = new Date(2020, 0, 1); // 2020-01-01
  424.   const endDate = new Date(2025, 11, 31); // 2025-12-31
  425.   printl("随机生日(1980-2005): " + RandomUtils.randomDateString(
  426.     new Date(1980, 0, 1),
  427.     new Date(2005, 11, 31),
  428.     "yyyy-MM-dd"
  429.   ));
  430.   printl("随机日志时间(近7天): " + RandomUtils.randomDateString(
  431.     new Date(Date.now() - 7 * 24 * 60 * 60 * 1000),
  432.     new Date(),
  433.     "yyyy-MM-dd HH:mm:ss.SSS"
  434.   ));
  435.   printl("");

  436.   // 5. 颜色随机测试
  437.   printl("=== 5. 颜色随机测试 ===");
  438.   printl("随机十六进制颜色: " + RandomUtils.randomColor());
  439.   printl("随机RGB颜色: " + JSON.stringify(RandomUtils.randomRGBColor()));
  440.   printl("随机RGBA颜色: " + JSON.stringify(RandomUtils.randomRGBAColor()));
  441.   printl("随机HSL颜色: " + JSON.stringify(RandomUtils.randomHSLColor()));
  442.   printl("柔和颜色: " + RandomUtils.generateRandomSoftColor());
  443.   printl("");

  444.   // 6. UUID测试
  445.   printl("=== 6. UUID测试 ===");
  446.   printl("标准UUID: " + RandomUtils.randomUUID());
  447.   printl("32位简化UUID: " + RandomUtils.simpleUUID());
  448.   printl("设备ID(UUID): " + RandomUtils.randomUUID());
  449.   printl("");

  450.   // 7. 密码验证码测试
  451.   printl("=== 7. 密码验证码测试 ===");
  452.   printl("12位复杂密码(全字符): " + RandomUtils.randomPassword(12, true, true, true, true));
  453.   printl("6位短信验证码(纯数字): " + RandomUtils.randomNumericCode(6));
  454.   printl("4位图形验证码(大小写): " + RandomUtils.randomAlphaCode(4, true));
  455.   printl("6位混合验证码(数字+大写字母): " + RandomUtils.randomVerificationCode(6));
  456.   printl("");

  457.   // 8. 综合模拟测试
  458.   printl("=== 8. 综合模拟测试 ===");
  459.   RandomUtils.simulateRandomUserActions();
  460.   RandomUtils.simulateRandomError();
  461.   RandomUtils.lottery(["用户A", "用户B", "用户C", "用户D", "用户E"], 2);
  462.   printl("");

  463.   printl("=== 所有测试完成 ===");
  464. }

  465. // 执行测试
  466. testRandomUtils();
复制代码




untoAIWROK软件苹果系统里的事件[event]方法小结nextAIWROK软件苹果IOS系统图色视觉[opencv]方法小结
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关导读
信息发布软件AIWROK软件苹果TAB界面视图示例
AIWROK软件苹果TAB界面视图示例
信息发布软件AIWROK苹果系统自带view视图简洁UI界面示例
AIWROK苹果系统自带view视图简洁UI界面示例
信息发布软件汇集HID安卓输入文字的方法和复制粘贴示例
汇集HID安卓输入文字的方法和复制粘贴示例
信息发布软件AIWROK软件找字与OCR方法汇总示例
AIWROK软件找字与OCR方法汇总示例
信息发布软件AIWROK软件找图方法汇总示例
AIWROK软件找图方法汇总示例
信息发布软件AIWROK软件滑动方法集合示例
AIWROK软件滑动方法集合示例
信息发布软件AIWROK软件安卓AIWROK汇集软件点击
AIWROK软件安卓AIWROK汇集软件点击
信息发布软件苹果系统点击方法综合示例
苹果系统点击方法综合示例
信息发布软件AIWROK苹果系统找图方法完整示例集合
AIWROK苹果系统找图方法完整示例集合
信息发布软件苹果系统找图方法完整示例集合
苹果系统找图方法完整示例集合
信息发布软件苹果IOS系统找字OCR方法例子
苹果IOS系统找字OCR方法例子
信息发布软件AIWORK软件数组高级示例
AIWORK软件数组高级示例
信息发布软件AIWROK软件运算符封装库示例
AIWROK软件运算符封装库示例
信息发布软件AIWROK软件语法运行小示例
AIWROK软件语法运行小示例
信息发布软件AIWROK软件JS循环小示例
AIWROK软件JS循环小示例
信息发布软件AIWROK软件H5网页被主脚本获取值用法
AIWROK软件H5网页被主脚本获取值用法
信息发布软件AIWROK软件创建可暂停恢复的多线程任务
AIWROK软件创建可暂停恢复的多线程任务
信息发布软件AIWROK软件类型转换方法例子
AIWROK软件类型转换方法例子
信息发布软件AIWROK软件H5脚本执行与进度显示
AIWROK软件H5脚本执行与进度显示 .
信息发布软件AIWROK软件根据时间段执行异步任务支持多线程并行处理
AIWROK软件根据时间段执行异步任务支持多线程并行处理
信息发布软件H5自动开关执行脚本功能演示
H5自动开关执行脚本功能演示
信息发布软件AIWROK软件H5单选脚本运行示例
AIWROK软件H5单选脚本运行示例
信息发布软件H5任务脚本选择与执行中心
H5任务脚本选择与执行中心
信息发布软件H5里CheckBox控件演示
H5里CheckBox控件演示
信息发布软件AIWROK软件正则用法实际例子
AIWROK软件正则用法实际例子
信息发布软件AIWROK软件权限管理器实现
AIWROK软件权限管理器实现
信息发布软件AIWORK软件节点方法无碍示例子
AIWORK软件节点方法无碍示例子
信息发布软件JSON.stringify 和 JSON.parse 完整示例
JSON.stringify 和 JSON.parse 完整示例
信息发布软件AIWROK软件展示JavaScript各种语句标识符的用法
AIWROK软件展示JavaScript各种语句标识符的用法
信息发布软件JS巧妙地组合使用各种条件语句
JS巧妙地组合使用各种条件语句
信息发布软件AIWROK手机数据库MySQL数据库截图片批量上传操作脚本
AIWROK手机数据库MySQL数据库截图片批量上传操作脚本
信息发布软件HID中文输入智能打字功能
HID中文输入智能打字功能
信息发布软件AIWROK软件对象工具函数库例子
AIWROK软件对象工具函数库例子
信息发布软件AIWROK软件H5交互演示黄色主题
AIWROK软件H5交互演示黄色主题
信息发布软件H5单按钮执行脚本示例
H5单按钮执行脚本示例
信息发布软件苹果H5界面完整调用脚本示例
苹果H5界面完整调用脚本示例
信息发布软件AIWROK软件平台设备信息全面检测工具例子
AIWROK软件平台设备信息全面检测工具例子
信息发布软件AIWROK创建和放大日志窗口并展示动态内容
AIWROK创建和放大日志窗口并展示动态内容
信息发布软件AIWROK软件device相关方法获取设备信息例子
AIWROK软件device相关方法获取设备信息例子[/backcolor]
信息发布软件数据库MySQL实时内容随机调用
数据库MySQL实时内容随机调用
信息发布软件AIWROK软件分享一个特效苹果H5页面
AIWROK软件分享一个特效苹果H5页面
信息发布软件数据库MYQ业务流程心跳程序启动
数据库MYQ业务流程心跳程序启动
信息发布软件数据库MySQL功能支持创建表插入中文数据查询删除功能例子
数据库MySQL功能支持创建表插入中文数据查询删除功能例子
信息发布软件AIWROK软件Zip 高级操作复杂示例
AIWROK软件Zip 高级操作复杂示例
信息发布软件AIWROK软件txt_文件读写方法小结
AIWROK软件txt_文件读写方法小结
信息发布软件AIWROK软件file文件操作方法小结
AIWROK软件file文件操作方法小结
信息发布软件AIWORK软件配置读写H5演示配套脚本
AIWORK软件配置读写H5演示配套脚本
信息发布软件AIWROK配置读写功能演示示例
AIWROK配置读写功能演示示例
信息发布软件AIWROK截图缓存工具
AIWROK截图缓存工具
信息发布软件AIWROK线程许可证工具
AIWROK线程许可证工具
信息发布软件整理了AIWROK环境下常用的Date对象和sleep对象方法
整理了AIWROK环境下常用的Date对象和sleep对象方法
信息发布软件FastUI界面普通用法
FastUI界面普通用法
信息发布软件FastUI界面类[window]方法小结
FastUI界面类[window]方法小结 方法 1:close(关闭指定窗口)方法 2:closeAll(关闭所有窗口)方法 3:loadUI(加载 UI 界面)方法 4:onClose(监听窗口关闭事件)方法 5:onLoad(监听窗口加载事件)方法 6:setFull(设置窗口全屏)方法 7:setHeight(设置窗口高度)方法 8:setHidden(隐藏窗口)方法 9:setLeft(设置窗口 X 轴坐标)方法 10:setTop(设置窗口 Y 轴坐标)方法 11:setVisable(显示隐藏的窗口)方
信息发布软件AIWROK软件按钮监听UI界面与事件监听功能演示
AIWROK软件按钮监听UI界面与事件监听功能演示.
信息发布软件AWIROK软件多选[uiCheckBox]方法小结
AWIROK软件多选方法小结 方法一:findByID 加载多选控件方法二:getAllChecked 获取所有选中项方法三:getAllSelect 获取所有选项方法四:getChecked 获取某个选项是否选中方法五:setChecked 设置某个选项是否选中方法六:setCheckeds 设置多个选项是否选中方法七:setHeight 设置高度
信息发布软件AIWROK日志演示开启日志显示 → 放大 → 关闭代码
AIWROK日志演示开启日志显示 → 放大 → 关闭代码
信息发布软件&#127983;AIWROK数组方法高级应用案例
🏯AIWROK数组方法高级应用案例
信息发布软件AIWROK软件日志悬浮窗简化版自动切换位置
AIWROK软件日志悬浮窗简化版自动切换位置
信息发布软件AIWROK软件String实例演示
AIWROK软件String实例演示
信息发布软件AIWROK软件S内置String类[String]方法小结
AIWROK软件S内置String类[String]方法小结 方法 1:charAt[/backcolor]方法 2:charCodeAt[/backcolor]方法 3:indexOf[/backcolor]方法 4:lastIndexOf[/backcolor]方法 5:length[/backcolor]方法 6:match[/backcolor]方法 7:replace[/backcolor]方法 8:replaceAll[/backcolor]方法 9:split[/backcolor]方法 10:startsWith[/backcolor]方法 11:substr[/backcolor]方法 12:substring[/backcolor]方法 13:trim[/backcol
信息发布软件AIWROK软件完整的WebSocket客户端示例
这段代码是一个完整的WebSocket客户端示例,用于连接到指定的WebSocket服务器并处理各种事件。具体来说,代码的作用如下: 定义服务器地址:首先定义了一个服务器的IP地址和端口号 var ip = "154.37.221.104:8886";。 创建WebSocket对象:尝试创建一个新的WebSocket对象 var ws = new WebSocket();。注意,这里的 new ws() 应该是 new WebSocket()。 添加事件监听器:代码中尝试为WebSocket对象添加事件监听器,但这里有一个错误。
信息发布软件AIWROK软件苹果系统中实现四种基本滑动操作
AIWROK软件苹果系统中实现四种基本滑动操作
信息发布软件hid的滑动没有百分比坐标滑动吗
hid的滑动没有百分比坐标滑动吗
信息发布软件单选控件[uiRadioButton]方法小结
单选控件方法小结 方法 1:加载单选控件[/backcolor]方法 2:获取选中项[/backcolor]方法 3:设置高度[/backcolor]方法 4:设置选中项[/backcolor]
信息发布软件AIWROK软件无障碍触摸操作示例:点击、左右滑动、上下滑动实例
AIWROK软件无障碍触摸操作示例:点击、左右滑动、上下滑动实例

QQ|( 京ICP备09078825号 )

本网站信息发布软件,是可以发布论坛,发送信息到各大博客,各大b2b软件自动发布,好不夸张的说:只要手工能发在电脑打开IE能发的网站,用这个宣传软件就可以仿制动作,进行推送发到您想发送的B2B网站或是信息发布平台上,不管是后台,还是前台,都可以进行最方便的广告发布,这个广告发布软件,可以按月购买,还可以试用软件,对网站的验证码也可以完全自动对信息发布,让客户自动找上门,使企业轻松实现b2b发布,这个信息发布软件,均是本站原创正版开发,拥有正版的血统,想要新功能,欢迎提意见给我,一好的分类信息群发软件在手,舍我其谁。QQ896757558

GMT+8, 2026-2-12 13:38 , Processed in 0.439910 second(s), 51 queries .

宣传软件--信息发布软件--b2b软件广告发布软件

快速回复 返回顶部 返回列表