Por ejemplo, tengo esta cadena "()[]|}" y quiero comparar cada carácter entre sí, pero primero no puedo hacer que el ciclo funcione correctamente. Para el primer registro, funciona correctamente, pero después, en lugar de ir a +1, debería ir a +2, creo, por lo que no comienza desde ) . ¿Cómo puedo hacer esto correctamente?
function isValid(s) { let temp = s.split(""); for (let i = 0; i < s.length/2; i++) { console.log(temp[i], temp[i+1]); } }; isValid("()[]|}");quiero registrar esto
( ) [ ] | }no
( ) ) [ [ ]Si la pregunta es '¿cómo incremento en dos en lugar de en 1', use i += 2 en lugar de i++ (ya que el operador de incremento solo aumenta en 1)
Su código es correcto pero su bucle for está ligeramente desviado:
for (let i = 0; i < s.length; i += 2) {Bucle mientras i sea menor que la longitud, pero agregue 2 en lugar de 1.
function isValid(s) { let temp = s.split(""); for (let i = 0; i < s.length; i += 2) { console.log(temp[i], temp[i+1]); } }; isValid("()[]|}");