¿Cómo validar 2 strings en javascript con condiciones?

Buenaas , tengo que ingresar el nombre de un usuario y re ingresar de nuevo.Validar con condiciones , es decir, que tenga lo siguiente =

*6 caracteres como minimo

*Que tenga al menos 1 minúscula, 1 mayúscula y 1 numero

De cumplir esto el nombre de usuario es válido y es igual.

El código que hice no me funciona, no se como hacerlo, por el momento hice esto :

<! DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script src="js.js"> </script>
    <title>Formulario</title>
</head>
<body>
    <div id="formulario">
        <form>
            <label>Usuario : </label>
            <input type="text" id="usuario" class="validacion"/>
            <label>Re Ingrese Usuario : </label>
            <input type="text" id="usuarioo" class="validacion"/>
            <input type="button" id="aceptar" value="aceptar"/>
            <input type="button" name="cancelar" value="cancelar"/>
        </form>
    </div>
</body>
</html>
var contadorMayusculas=0; //inicializo variables
var contadorMinusculas =0;
var contadorNumeros=0;
var estado;
var otroEstado;
window.onload=function(){
var baceptar = document.getElementById("aceptar");
baceptar.addEventListener("click", validacion); //cuando se preciona el
                                                //boton de aceptar ingresa
                                                //a la funcion validacion
};
function validacion(){
var usuario1 = document.getElementById("usuario"); //se llama al id del input
var usuario2 = document.getElementById("usuarioo");
if(usuario1.length>=6){ //evalua si tiene 6 o mas de caracteres
for(var i = 0 ; i<=usuario1.length ; i++){ // se realiza el for para contar los
                                           // caracteres
    var caracteres = usuario1.charAt(i);
    if(caracteres>='A' && caracteres<='Z'){ //si contiene A o Z mayuscula 
          contadorMayusculas++;            //va contar la cantidad de mayusculas
    }
   if(caracteres>='a' && caracteres<='z'){ //si contiene a o z minuiscula
          contadorMinusculas++; //va contar la cantidad de minusculas
    }
    if(caracteres>='0' && caracteres<='9'){ //si contiene 0 o 9 minuiscula
          contadorNumeros++; //va contar la cantidad de numeros
    }
}
if(contadorMayusculas>=1 && contadorMinusculas>=1 && contadorMayusculas>=1){
         estado=true; //si el contador de mayusculas , minusculas y numeros contiene al menos 1 de ellos
}                     // entonces tendra un estado igual a true
else{
     otroEstado=false; //caso contrario false
}
}
if(estado == true && usuario1.value==usuario2.value){ //si el estado es true
    alert("son iguales");              //y ambos usuarios son iguales entonces
    //sale este alert
}
else{
    //caso contrario sale el alert con el mensaje de error!
    alert("ERROR!")
}
}

Añade tu respuesta

Haz clic para o