B2B网络软件
标题:
AIWROK条件语句实用示例智能活动推荐系统
[打印本页]
作者:
YYPOST群发软件
时间:
昨天 08:50
标题:
AIWROK条件语句实用示例智能活动推荐系统
AIWROK条件语句实用示例智能活动推荐系统
5.png
(1.45 MB, 下载次数: 0)
下载附件
昨天 08:49
上传
/**
* ============================================
* AIWROK 条件语句实用示例 - 智能活动推荐系统
*
* 本示例演示 JavaScript 条件语句的实际应用:
* - if 语句
* - if...else 语句
* - if...else if...else 语句
* - switch 语句
*
* 应用场景:根据时间、天气、用户偏好等因素智能推荐活动
*
* 交流QQ群: 711841924 (群一) / 528816639 (苹果脚本内测群)
* 云
* ============================================
*/
// ==================== 工具函数 ====================
/**
* 获取当前时间段
* @returns {string} 时间段标识
*/
function getTimePeriod() {
var hour = new Date().getHours();
if (hour >= 5 && hour < 9) {
return "早晨";
} else if (hour >= 9 && hour < 12) {
return "上午";
} else if (hour >= 12 && hour < 14) {
return "中午";
} else if (hour >= 14 && hour < 18) {
return "下午";
} else if (hour >= 18 && hour < 22) {
return "晚上";
} else {
return "深夜";
}
}
/**
* 获取星期几的中文名称
* @returns {string} 星期几
*/
function getDayName() {
var day = new Date().getDay();
var dayNames = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"];
return dayNames[day];
}
/**
* 判断是否为周末
* @returns {boolean}
*/
function isWeekend() {
var day = new Date().getDay();
return day === 0 || day === 6; // 0是星期日,6是星期六
}
/**
* 判断是否为工作日
* @returns {boolean}
*/
function isWorkday() {
return !isWeekend();
}
// ==================== 条件语句示例 ====================
/**
* 示例1: if 语句 - 基础条件判断
* 只在满足条件时执行操作
*/
function example1_ifStatement() {
console.log("\n========== 示例1: if 语句 ==========");
var temperature = 28; // 模拟温度
if (temperature > 25) {
console.log("温度较高,建议多喝水");
}
if (isWeekend()) {
console.log("今天是休息日,可以好好放松");
}
}
/**
* 示例2: if...else 语句 - 二选一决策
* 根据条件选择两种不同的处理方式
*/
function example2_ifElseStatement() {
console.log("\n========== 示例2: if...else 语句 ==========");
var hasUmbrella = true; // 是否有伞
var isRaining = true; // 是否下雨
if (isRaining) {
if (hasUmbrella) {
console.log("下雨了,但您有伞,可以放心出门");
} else {
console.log("下雨了,您没有伞,建议等雨停或叫车");
}
} else {
console.log("天气晴朗,适合外出活动");
}
// 另一个例子:根据电量给出建议
var batteryLevel = 35; // 电池百分比
if (batteryLevel < 20) {
console.log("电量不足 " + batteryLevel + "%,请尽快充电");
} else {
console.log("电量充足 " + batteryLevel + "%,可以继续使用");
}
}
/**
* 示例3: if...else if...else 语句 - 多条件分支
* 根据多个条件选择不同的处理方式
*/
function example3_ifElseIfStatement() {
console.log("\n========== 示例3: if...else if...else 语句 ==========");
var score = 85; // 模拟分数
if (score >= 90) {
console.log("成绩优秀:A级");
} else if (score >= 80) {
console.log("成绩良好:B级");
} else if (score >= 70) {
console.log("成绩中等:C级");
} else if (score >= 60) {
console.log("成绩及格:D级");
} else {
console.log("成绩不及格:需要努力");
}
// 根据时间段推荐活动
var period = getTimePeriod();
if (period === "早晨") {
console.log("早晨时光:适合晨练、阅读或规划一天的工作");
} else if (period === "上午") {
console.log("上午时光:工作效率最高,处理重要任务");
} else if (period === "中午") {
console.log("中午时光:午餐休息,适当小憩");
} else if (period === "下午") {
console.log("下午时光:继续工作或学习,可适当休息");
} else if (period === "晚上") {
console.log("晚上时光:休闲娱乐、陪伴家人或自我提升");
} else {
console.log("深夜时光:应该休息了,保证充足睡眠");
}
}
/**
* 示例4: switch 语句 - 多值匹配
* 根据不同的值执行不同的代码块
*/
function example4_switchStatement() {
console.log("\n========== 示例4: switch 语句 ==========");
var day = new Date().getDay();
var dayName = getDayName();
console.log("今天是:" + dayName);
switch (day) {
case 1: // 星期一
console.log("新的一周开始,制定本周计划");
break;
case 2: // 星期二
console.log("继续推进工作任务");
break;
case 3: // 星期三
console.log("一周过半,检查进度");
break;
case 4: // 星期四
console.log("接近周末,完成收尾工作");
break;
case 5: // 星期五
console.log("即将周末,可以轻松一些");
break;
case 6: // 星期六
console.log("周末第一天,好好休息或外出游玩");
break;
case 0: // 星期日
console.log("周末第二天,准备下周工作");
break;
default:
console.log("无效的日期");
break;
}
// 另一个例子:根据月份判断季节
var month = new Date().getMonth() + 1; // getMonth() 返回 0-11
var season = "";
switch (month) {
case 3:
case 4:
case 5:
season = "春季";
break;
case 6:
case 7:
case 8:
season = "夏季";
break;
case 9:
case 10:
case 11:
season = "秋季";
break;
case 12:
case 1:
case 2:
season = "冬季";
break;
default:
season = "未知季节";
break;
}
console.log("当前月份:" + month + "月,属于:" + season);
}
/**
* 示例5: 嵌套条件语句 - 复杂逻辑判断
* 在实际应用中经常需要多层条件判断
*/
function example5_nestedConditions() {
console.log("\n========== 示例5: 嵌套条件语句 ==========");
var weekendFlag = isWeekend();
var period = getTimePeriod();
var weather = "晴天"; // 可选:晴天、雨天、阴天、雪天
console.log("当前状态 - " + getDayName() + " " + period + " " + weather);
// 外层判断:工作日还是周末
if (weekendFlag) {
console.log("【周末模式】");
// 内层判断:时间段
if (period === "早晨" || period === "上午") {
console.log("推荐活动:睡个懒觉,然后吃顿丰盛的早餐");
} else if (period === "中午" || period === "下午") {
// 再内层判断:天气
if (weather === "晴天") {
console.log("推荐活动:户外郊游、野餐或运动");
} else if (weather === "雨天") {
console.log("推荐活动:看电影、逛商场或在家看书");
} else {
console.log("推荐活动:室内活动或短途出行");
}
} else {
console.log("推荐活动:与朋友聚会或家庭聚餐");
}
} else {
console.log("【工作日模式】");
if (period === "早晨") {
console.log("建议:早起锻炼,为一天的工作做准备");
} else if (period === "上午" || period === "下午") {
console.log("建议:专注工作,提高效率");
} else if (period === "晚上") {
console.log("建议:学习新技能或适当放松");
} else {
console.log("建议:早点休息,保证明天精力充沛");
}
}
}
/**
* 示例6: 综合应用 - 智能活动推荐系统
* 结合多种条件语句实现完整的推荐逻辑
*/
function example6_smartRecommendation() {
console.log("\n========== 示例6: 智能活动推荐系统 ==========");
var timePeriod = getTimePeriod();
var dayName = getDayName();
var weekend = isWeekend();
var temperature = 25; // 模拟温度
var energyLevel = "高"; // 可选:高、中、低
console.log("===== 个性化活动推荐 =====");
console.log("时间:" + dayName + " " + timePeriod);
console.log("温度:" + temperature + "°C");
console.log("精力状态:" + energyLevel);
console.log("=========================\n");
// 第一层:判断工作日还是周末
if (weekend) {
console.log("【周末推荐】");
// 第二层:根据时间段推荐
switch (timePeriod) {
case "早晨":
if (energyLevel === "高") {
console.log("✓ 晨跑或瑜伽");
console.log("✓ 做一顿营养早餐");
console.log("✓ 阅读一本好书");
} else {
console.log("✓ 多睡一会儿");
console.log("✓ 轻松的伸展运动");
}
break;
case "上午":
case "下午":
// 第三层:根据温度和精力推荐
if (temperature > 30) {
console.log("✓ 室内游泳");
console.log("✓ 参观博物馆或美术馆");
console.log("✓ 咖啡厅阅读");
} else if (temperature > 20) {
console.log("✓ 公园散步");
console.log("✓ 骑自行车");
console.log("✓ 户外野餐");
} else {
console.log("✓ 健身房锻炼");
console.log("✓ 购物逛街");
console.log("✓ 和朋友聚会");
}
break;
case "晚上":
console.log("✓ 看一部好电影");
console.log("✓ 与家人共进晚餐");
console.log("✓ 规划下周安排");
break;
default:
console.log("✓ 休息时间,保持良好作息");
break;
}
} else {
console.log("【工作日推荐】");
// 使用 if...else if 结构
if (timePeriod === "早晨") {
console.log("✓ 快速晨练(15分钟)");
console.log("✓ 营养早餐");
console.log("✓ 查看今日工作计划");
} else if (timePeriod === "上午") {
if (energyLevel === "高") {
console.log("✓ 处理最重要和最困难的任务");
console.log("✓ 创造性工作");
} else {
console.log("✓ 先做简单的热身任务");
console.log("✓ 喝杯咖啡提神");
}
} else if (timePeriod === "中午") {
console.log("✓ 健康午餐");
console.log("✓ 短暂午休(20-30分钟)");
console.log("✓ 散步放松");
} else if (timePeriod === "下午") {
console.log("✓ 处理常规工作任务");
console.log("✓ 团队协作和沟通");
console.log("✓ 适当休息,避免疲劳");
} else if (timePeriod === "晚上") {
console.log("✓ 学习新技能或知识");
console.log("✓ 适度运动");
console.log("✓ 放松娱乐");
} else {
console.log("✓ 准备明天的工作");
console.log("✓ 早点休息");
}
}
}
/**
* 示例7: 条件运算符(三元运算符)
* 简洁的条件表达式
*/
function example7_ternaryOperator() {
console.log("\n========== 示例7: 三元运算符 ==========");
var age = 20;
var status = age >= 18 ? "成年人" : "未成年人";
console.log("年龄:" + age + ",状态:" + status);
var score = 75;
var result = score >= 60 ? "及格" : "不及格";
console.log("分数:" + score + ",结果:" + result);
// 嵌套三元运算符(谨慎使用,影响可读性)
var grade = score >= 90 ? "A" : (score >= 80 ? "B" : (score >= 70 ? "C" : (score >= 60 ? "D" : "F")));
console.log("等级:" + grade);
// 实际应用场景
var isLogin = true;
var message = isLogin ? "欢迎回来!" : "请先登录";
console.log(message);
}
/**
* 示例8: 实际业务场景 - 用户权限管理系统
* 演示条件语句在实际业务中的应用
*/
function example8_businessLogic() {
console.log("\n========== 示例8: 用户权限管理系统 ==========");
// 模拟用户数据
var users = [
{ name: "张三", role: "admin", level: 3, vip: true },
{ name: "李四", role: "user", level: 2, vip: false },
{ name: "王五", role: "guest", level: 1, vip: false },
{ name: "赵六", role: "user", level: 2, vip: true }
];
console.log("----- 用户权限检查 -----");
for (var i = 0; i < users.length; i++) {
var user = users[i];
var permissions = [];
// 根据角色分配基础权限
switch (user.role) {
case "admin":
permissions.push("查看所有数据");
permissions.push("修改系统设置");
permissions.push("管理用户");
break;
case "user":
permissions.push("查看个人数据");
permissions.push("修改个人信息");
break;
case "guest":
permissions.push("浏览公开内容");
break;
default:
permissions.push("无权限");
break;
}
// VIP用户额外权限
if (user.vip) {
permissions.push("VIP专属内容");
permissions.push("优先客服支持");
}
// 根据等级解锁功能
if (user.level >= 3) {
permissions.push("高级分析工具");
} else if (user.level >= 2) {
permissions.push("基础分析工具");
}
console.log("\n用户:" + user.name);
console.log("角色:" + user.role + " | 等级:" + user.level + " | VIP:" + (user.vip ? "是" : "否"));
console.log("权限列表:");
for (var j = 0; j < permissions.length; j++) {
console.log(" ✓ " + permissions[j]);
}
}
}
/**
* 示例9: 数据验证与错误处理
* 演示如何使用条件语句进行数据验证
*/
function example9_dataValidation() {
console.log("\n========== 示例9: 数据验证与错误处理 ==========");
/**
* 验证邮箱格式
*/
function validateEmail(email) {
if (!email || email.length === 0) {
return { valid: false, message: "邮箱不能为空" };
}
if (email.indexOf("@") === -1) {
return { valid: false, message: "邮箱必须包含@符号" };
}
var parts = email.split("@");
if (parts.length !== 2) {
return { valid: false, message: "邮箱格式不正确" };
}
var username = parts[0];
var domain = parts[1];
if (username.length < 1) {
return { valid: false, message: "用户名部分不能为空" };
}
if (domain.indexOf(".") === -1) {
return { valid: false, message: "域名格式不正确" };
}
return { valid: true, message: "邮箱格式正确" };
}
/**
* 验证密码强度
*/
function validatePassword(password) {
if (!password || password.length === 0) {
return { valid: false, strength: 0, message: "密码不能为空" };
}
var strength = 0;
var issues = [];
// 长度检查
if (password.length >= 8) {
strength += 1;
} else {
issues.push("密码长度至少8位");
}
// 包含大写字母
if (/[A-Z]/.test(password)) {
strength += 1;
} else {
issues.push("需要包含大写字母");
}
// 包含小写字母
if (/[a-z]/.test(password)) {
strength += 1;
} else {
issues.push("需要包含小写字母");
}
// 包含数字
if (/[0-9]/.test(password)) {
strength += 1;
} else {
issues.push("需要包含数字");
}
// 包含特殊字符
if (/[^A-Za-z0-9]/.test(password)) {
strength += 1;
} else {
issues.push("建议包含特殊字符");
}
var level = "";
if (strength <= 2) {
level = "弱";
} else if (strength <= 4) {
level = "中";
} else {
level = "强";
}
return {
valid: strength >= 3,
strength: strength,
level: level,
message: issues.length > 0 ? issues.join(";") : "密码强度良好"
};
}
// 测试邮箱验证
console.log("\n----- 邮箱验证测试 -----");
var testEmails = [
"user@example.com",
"invalid-email",
"@example.com",
"user@",
"test@test.org"
];
for (var i = 0; i < testEmails.length; i++) {
var result = validateEmail(testEmails[i]);
var icon = result.valid ? "✓" : "✗";
console.log(icon + " " + testEmails[i] + " - " + result.message);
}
// 测试密码验证
console.log("\n----- 密码强度测试 -----");
var testPasswords = [
"123",
"password",
"Password1",
"Str0ng!Pass",
"Abcdefgh1!"
];
for (var i = 0; i < testPasswords.length; i++) {
var result = validatePassword(testPasswords[i]);
var icon = result.valid ? "✓" : "⚠";
console.log(icon + " 密码:" + testPasswords[i]);
console.log(" 强度:" + result.level + " (" + result.strength + "/5)");
console.log(" 提示:" + result.message);
}
}
/**
* 示例10: 复杂条件组合 - 智能购物推荐
* 结合多个条件进行综合判断
*/
function example10_complexConditions() {
console.log("\n========== 示例10: 智能购物推荐系统 ==========");
/**
* 根据用户画像推荐商品
*/
function recommendProducts(userProfile) {
var recommendations = [];
var budget = userProfile.budget; // 预算
var age = userProfile.age; // 年龄
var interests = userProfile.interests; // 兴趣标签数组
var season = userProfile.season; // 季节
console.log("\n用户画像:");
console.log(" 预算:" + budget + "元");
console.log(" 年龄:" + age + "岁");
console.log(" 兴趣:" + interests.join("、"));
console.log(" 季节:" + season);
console.log("\n推荐商品:");
// 根据预算范围推荐
if (budget >= 5000) {
recommendations.push("高端电子产品");
if (interests.indexOf("摄影") !== -1) {
recommendations.push("专业相机");
}
if (interests.indexOf("游戏") !== -1) {
recommendations.push("游戏主机");
}
} else if (budget >= 2000) {
recommendations.push("中端电子产品");
if (interests.indexOf("运动") !== -1) {
recommendations.push("智能手表");
}
} else if (budget >= 500) {
recommendations.push("实用生活用品");
if (interests.indexOf("阅读") !== -1) {
recommendations.push("电子书阅读器");
}
} else {
recommendations.push("性价比好物");
}
// 根据年龄段推荐
if (age < 18) {
recommendations.push("学习用品");
recommendations.push("青少年服饰");
} else if (age < 35) {
if (interests.indexOf("健身") !== -1) {
recommendations.push("健身器材");
}
recommendations.push("时尚单品");
} else if (age < 50) {
recommendations.push("家居用品");
if (interests.indexOf("旅游") !== -1) {
recommendations.push("旅行装备");
}
} else {
recommendations.push("健康产品");
recommendations.push("舒适家居");
}
// 根据季节推荐
switch (season) {
case "春":
recommendations.push("春季服装");
recommendations.push("户外踏青装备");
break;
case "夏":
recommendations.push("清凉用品");
recommendations.push("防晒产品");
break;
case "秋":
recommendations.push("秋季服装");
recommendations.push("保暖用品");
break;
case "冬":
recommendations.push("冬季服装");
recommendations.push("取暖设备");
break;
}
// 去重并显示推荐
var uniqueRecommendations = [];
for (var i = 0; i < recommendations.length; i++) {
if (uniqueRecommendations.indexOf(recommendations[i]) === -1) {
uniqueRecommendations.push(recommendations[i]);
}
}
for (var i = 0; i < uniqueRecommendations.length; i++) {
console.log(" ✓ " + uniqueRecommendations[i]);
}
return uniqueRecommendations;
}
// 测试不同用户画像
console.log("===== 用户1 =====");
var user1 = {
budget: 8000,
age: 25,
interests: ["摄影", "旅游", "美食"],
season: "夏"
};
recommendProducts(user1);
console.log("\n===== 用户2 =====");
var user2 = {
budget: 1500,
age: 40,
interests: ["阅读", "健身", "音乐"],
season: "冬"
};
recommendProducts(user2);
console.log("\n===== 用户3 =====");
var user3 = {
budget: 300,
age: 16,
interests: ["游戏", "动漫"],
season: "春"
};
recommendProducts(user3);
}
// ==================== 主函数 ====================
/**
* 运行所有示例
*/
function runAllExamples() {
console.log("========================================");
console.log(" AIWROK 条件语句实用示例");
console.log(" 智能活动推荐系统");
console.log("========================================");
console.log("当前时间:" + new Date().toLocaleString());
console.log("今天是:" + getDayName());
console.log("时间段:" + getTimePeriod());
// 依次运行所有示例
example1_ifStatement();
sleep.second(2); // 延时2秒,便于观察
example2_ifElseStatement();
sleep.second(2);
example3_ifElseIfStatement();
sleep.second(2);
example4_switchStatement();
sleep.second(2);
example5_nestedConditions();
sleep.second(2);
example6_smartRecommendation();
sleep.second(2);
example7_ternaryOperator();
sleep.second(2);
// 新增:示例8 - 实际业务场景应用
example8_businessLogic();
sleep.second(2);
// 新增:示例9 - 数据验证与错误处理
example9_dataValidation();
sleep.second(2);
// 新增:示例10 - 复杂条件组合
example10_complexConditions();
console.log("\n========================================");
console.log(" 所有示例运行完成");
console.log("========================================");
}
// 执行所有示例
runAllExamples();
复制代码
欢迎光临 B2B网络软件 (http://bbs.niubt.cn/)
Powered by Discuz! X3.2