[ Foro de Javascript ]

Funcion se detiene sin sentido

16-Nov-2023 21:11
Invitado (IvanDuran)
0 Respuestas

Tengo un arreglo de numeros:
var codigos = ["01020", "01110", "01210", "01790", "02300", "20000", "20110", "20230", "20230", "20206"];

y con una funcion comparo un numero con los de la lista:

if(compararCodigo(codeString, num)){
      console.log("true")
   }

function compararCodigo(codigo, m){
   var n = codigos.length;
   if (m <= n){
     if(codigo == codigos[m]){
       console.log(codigo);             //con estos dos log veo que se cumple la condicion
       console.log(codigos[m]);       como debe ser **
       return true;
     }
     else{compararCodigo(codigo, m+1);}
   }
   else{return false;}
 
 }

el problema es que cuando ingreso el valor correcto de mi primer objeto en el array todo bien , en la consola manda "true", pero con cualquier otro numero correcto de la lista se corta el codigo y solo manda los dos log que me indican que la comparacion fue correcta**

No se si me explico, quiero saber por que pasa eso? y como lo soluciono.
como dato adicional estoy programando en shopify usando liquid y codigo javascript




Si ya eres usuario del sistema, puedes contestar desde tu cuenta y así ganar prestigio.

Si sólo eres un visitante, puedes optar por...