这是一个密码验证Java脚本。我每次运行时都会收到错误(isPasswordValid('Ggtrt54r $'))函数。 我给了UpperCase,LowerCase,8个字符和特殊字符作为isPasswordValid输入。但每次我越来越“('密码无效需要特殊字符')”错误。我的代码无法通过最后的要求。任何人都可以请检查,让我知道我在这里做什么错了。从这里这个代码是什么问题,我不知道谁能帮我:
//主要功能
function isPasswordValid(input){
if (hasUpperCase(input) && hasLowerCase(input) && isLongEnough(input) && hasSpecialCharacter(input)) {
console.log('Code works fine !!');
} else if (!hasUpperCase(input)) {
console.log('Password Invalid Needs Uppercase');
}else if (!hasLowerCase(input)) {
console.log('Password Invalid needs lowercase');
} else if (!isLongEnough(input)) {
console.log('Password Invalid needs 8 Characters');
} else if (!hasSpecialCharacter(input)) {
console.log('Password Invalid needs Special Characters');
}
}
function hasUpperCase (input){
for (var i = 0; i < input.length; i++){
if(input[i] === input[i].toUpperCase()){
return true;
}
}
}
function hasLowerCase(input){
for(var i = 0; i < input.length; i++){
if (input[i] === input[i].toLowerCase()){
return true;
}
}
}
function isLongEnough(input){
for(var i = 0; i < input.length; i++){
if (input.length === 8){
return true;
}
}
}
function hasSpecialCharacter(input){
var specialCharacters = ['!', '@', '#', '$', '%', '^', '&', '*'];
for(var i = 0; i < input.length; i++){
for(var j = 0; j < specialCharacters.length; j++){
}
if (input[i] === specialCharacters[j]){
return true;
}
}
}
isPasswordValid('Ggtrt54r$');
$
开始是空间字符在这里,但每次它给我的错误需要特殊字符。任何人都可以帮助我。
邑感谢的人。我应该更仔细地了解所有这些错误......它会让我的时间消耗很多:) –