這是一個密碼驗證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$');
$
開始是空間字符在這裏,但每次它給我的錯誤需要特殊字符。任何人都可以幫助我。
邑感謝的人。我應該更仔細地瞭解所有這些錯誤......它會讓我的時間消耗很多:) –