登录验证通过if/else判断账号密码是否匹配预设值,先校验空输入和用户存在性,再核对密码,成功后用switch分配角色,建议哈希存密、封装函数并处理空格大小写。

用流程控制实现简单登录验证,核心是通过条件判断(if/else)检查用户输入的账号密码是否匹配预设值,并根据结果决定程序走向——比如允许进入系统或提示错误。
基础条件判断:验证账号密码
最直接的方式是用 if 判断用户名和密码是否同时正确。需注意:通常要求两者都匹配才成功,用逻辑与(&&)连接。
- 设定一个合法的用户名(如
"admin")和密码(如"123456") - 获取用户输入(命令行、表单、变量赋值等)
- 用
if (inputUser === "admin" && inputPass === "123456")做判断 - 成立则执行登录成功逻辑(如打印“登录成功”或跳转页面),否则走失败分支
分层校验:先检查空输入,再比对密码
真实场景中,用户可能漏填信息。可叠加多层 if/else if/else,让流程更健壮:
- 先判断用户名或密码是否为空,为空则提示“请输入账号/密码”
- 再判断用户名是否存在(比如查用户列表),不存在则提示“用户不存在”
- 最后核对密码,错误时提示“密码错误”
- 全部通过才允许登录
用 switch 模拟多角色登录(进阶小技巧)
如果不同账号对应不同权限,可在验证通过后,用 switch 根据用户名分配角色:
-
switch(inputUser)分支处理 -
case "admin":→ 赋予管理员权限 -
case "user":→ 仅开放普通功能 -
default:→ 安全兜底,按普通用户处理
避免明文硬编码,为后续升级留余地
虽然演示常用字符串直接比较,但实际应避免把密码写死在代码里:
- 密码建议用简单哈希(如
md5或bcrypt)存储和比对 - 账号密码可暂存对象或数组,方便后期替换为数据库查询
- 验证逻辑尽量封装成函数(如
checkLogin(user, pass)),提高复用性
不复杂但容易忽略细节:大小写敏感、前后空格、中文标点误输——加一句 .trim() 和统一转小写能减少很多用户投诉。










