没有写错,原文是这样的:
//checkStrong函数
//返回密码的强度级别
function checkStrong(sPW){
if (sPW.length<=5)
return 0; //密码太短
Modes=0;
for (i=0;i<sPW.length;i++){
//测试每一个字符的类别并统计一共有多少种模式.
Modes|=CharMode(sPW.charCodeAt(i));
}
return bitTotal(Modes);
}
请问这个或等号有什么用,我还是有点不懂,可以再具体点吧。谢谢了。。
追答Modes|=CharMode(sPW.charCodeAt(i));
这句就是等于
Modes=Modes|CharMode(sPW.charCodeAt(i));
按位或操作与加减乘除等都属于基本的运算方法,运算法则如上4条
Modes |=CharMode(sPW.charCodeAt(i));) 难道 就是
Modes=Modes
或者
Modes=CharMode(sPW.charCodeAt(i));)
吗?
你说的是逻辑或符号为||
而题目中是位或是一种基本的计算类型公式如下
1|1=1
1|0=1
0|1=1
0|0=0
你需要将两个数换成二进制,然后每一位运用上面的公式进行计算
例如3|4的计算方法为
3=011B
4=100B
3|4=011|100=111=7
不会算就用计算器3|4计算方法是按3然后按or然后按4最后按=得出结果