js 密码强度检测工具

Posted on   书中枫叶  阅读(213)  评论(0编辑  收藏  举报

效果:

 

 

新建一个密码强度检测工具文件 password-strength.js :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// has number
const hasNumber = (number) => new RegExp(/[0-9]/).test(number);
 
// has mix of small and capitals
const hasMixed = (number) => new RegExp(/[a-z]/).test(number) && new RegExp(/[A-Z]/).test(number);
 
// has special chars
const hasSpecial = (number) => new RegExp(/[!#@$%^&*)(+=._-]/).test(number);
 
// set color based on password strength
export const strengthColor = (count) => {
    if (count < 2) return { lever: count, label: 'Poor', color: '#C0C0C0' };
    if (count < 3) return { lever: count, label: 'Weak', color: '#969696' };
    if (count < 4) return { lever: count, label: 'Normal', color: '#808080' };
    if (count < 5) return { lever: count, label: 'Good', color: '#646464' };
    if (count < 6) return { lever: count, label: 'Strong', color: '#4B4B4B' };
    return { lever: count,label: 'Poor', color: '#C0C0C0' };
};
 
// password strength indicator
export const strengthIndicator = (number) => {
    let strengths = 0;
    if (number.length > 5) strengths += 1;
    if (number.length > 7) strengths += 1;
    if (hasNumber(number)) strengths += 1;
    if (hasSpecial(number)) strengths += 1;
    if (hasMixed(number)) strengths += 1;
 
    return strengthColor(strengths);
};

  如何使用:

1
2
3
import {strengthIndicator} from "@/utils/password-strength";
 
strengthIndicator(1234565)

  

相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南

随笔 - 24, 文章 - 0, 评论 - 13, 阅读 - 59480

Copyright © 2025 书中枫叶
Powered by .NET 9.0 on Kubernetes

点击右上角即可分享
微信分享提示