Renvoyer une valeur booléenne dans une fonction JavaScript
Je suis en train de faire un formulaire de validation pour vérifier si les mots de passe de match. Mais la validation de la fonction renvoie toujours undefined
.
function validatePassword(errorMessage)
{
var password = document.getElementById("password");
var confirm_password = document.getElementById("password_confirm");
if(password.value)
{
//Check if confirm_password matches
if(password.value != confirm_password.value)
{
return false;
}
}
else
{
//If password is empty but confirm password is not
if(confirm_password.value)
{
return false;
}
}
return true;
}
Veuillez noter que le validatePassword
est appelé à partir d'un membre de la fonction de l'objet de Formulaire.
function Form(validation_fn)
{
//Do other stuff
this.submit_btn = document.getElementById("submit");
this.validation_fn = validation_fn;
}
Form.prototype.submit = funciton()
{
var result;
if(this.validation_fn)
{
result = this.validation_fn();
}
//result is always undefined
if(result)
{
//do other stuff
}
}
source d'informationauteur tryurbest
Vous devez vous connecter pour publier un commentaire.
Vous pouvez simplifier beaucoup:
Cela se traduira dans le présent, qui vous permettra de toujours retourner un booléen. Votre fonction doit toujours renvoyer un booléen, mais vous pouvez le voir, il fait un peu mieux si vous simplifier votre code:
Vous pourriez emballer votre valeur de retour de la fonction Booléenne
Que ferons en sorte que tous les falsey valeurs sont fausses et truthy déclarations sont vraies.