类别 | 详情 |
功能描述 | 生成指定长度的随机字符 |
方法声明 | 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)); |
类别 | 详情 |
功能描述 | 随机整数 |
方法声明 | Int32 WBJqf91s7J(Int32, Int32) |
返回值类型 | Int32 |
参数说明 | Int32:起始;Int32:结束 |
调用案例 | rand.randNumber(1000,9999) |
类别 | 详情 |
功能描述 | 生成指定范围内的随机小数 |
方法声明 | 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 类似) |
类别 | 详情说明 |
函数名称 | 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 ("跳过网络请求"); } } |
类别 | 详情说明 |
函数名称 | 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; } | 从不同数组中随机选择数据组合成测试用户信息 |
类别 | 详情说明 |
函数名称 | 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; } |
类别 | 详情说明 |
函数名称 | 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 生成密码重置链接中的唯一令牌,确保安全性 |
类别 | 详情说明 | |
函数名称 | 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 = 仅大写字母) |
应用场景 | 示例代码 | 说明 |
生成复杂密码(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 位包含大小写、数字、特殊符号的盐值(用于密码加密存储) |
类别 | 详情说明 |
函数名称 | shuffle |
方法功能 | 使用Fisher-Yates 洗牌算法对数组进行随机排序,生成新数组(不修改原数组) |
方法签名 | Array shuffle(Array array) |
返回值 | Array(随机排序后的新数组) |
参数 | - Array array:需要随机排序的源数组 |
函数名称 | shuffleInPlace |
方法功能 | 使用Fisher-Yates 洗牌算法对数组进行原地随机排序(直接修改原数组) |
方法签名 | Void shuffleInPlace(Array array) |
返回值 | Void(无返回值,排序后结果直接作用于输入数组) |
参数 | - Array array:需要随机排序的源数组(将被直接修改) |
应用场景 | 示例代码 | 说明 |
基本洗牌示例(不修改原数组) | 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); | 打乱游戏房间顺序,生成随机地图路径,提升游戏可玩性 |
欢迎光临 B2B网络软件 (http://bbs.niubt.cn/) | Powered by Discuz! X3.2 |