Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

160
Vistas
problemas con localStorage y valores de ahorro

Tengo un programa donde tengo estas cadenas que se agregan a una matriz. Sin embargo, hay muchas cadenas que se desencadenan por una determinada condición, que se puede cumplir varias veces, sin embargo, solo quiero que se agregue la primera vez. Entonces, implementé un sistema donde el evento de agregar la cadena a la matriz se desencadena por la condición original y una expresión booleana. Aquí hay un ejemplo de una de esas condiciones:

 if (count >= 10 && displayMulti == true) { consoleData.shift() consoleData.push("Multi available") displayMulti = false window.localStorage.setItem("display_multi", String(displayMulti)) updateConsole() }

Cuando la cadena se agrega a la matriz, el booleano, displayMulti, se establece en falso para que no se active nuevamente. Sin embargo, al actualizar la página, aún se activará. No estoy seguro de por qué, porque siento que he guardado correctamente los valores en el almacenamiento local. El código está abajo:

 if (window.localStorage.getItem("display_multi") != null ) { displayMulti = Boolean(window.localStorage.getItem("display_multi")) } else { console.log("here") var displayMulti = true }

La declaración de registro de la consola "aquí" no se activa. Entonces, no tengo idea de por qué esto seguiría activándose porque no veo cómo el valor booleano es cierto. He probado en tantos puntos diferentes que realmente no tengo idea de qué está mal. Tampoco creo que esos valores se vean afectados en ningún otro lugar de mi código. Cualquier ayuda es apreciada.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Aquí hay una solución que analiza correctamente su cadena como un valor booleano. En lugar de Boolean() , se usa un condicional (window.localStorage.getItem("display_multi") === 'true') (window.localStorage.getItem("display_multi") === 'true').

 if (window.localStorage.getItem("display_multi") != null ) { displayMulti = (window.localStorage.getItem("display_multi") === 'true') } else { console.log("here") var displayMulti = true } if (count >= 10 && displayMulti == true) { consoleData.shift() consoleData.push("Multi available") displayMulti = false window.localStorage.setItem("display_multi", String(displayMulti)) updateConsole() }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda