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

286
Vistas
¿Por qué no puedo insertar una cantidad de valores en Firebase a través del bucle?

Solo estoy tratando de insertar una cantidad de valores en Firebase, por razones de análisis. De hecho, estoy probando la base de datos para un proyecto universitario. La idea era obtener el tiempo que lleva insertar y recuperar datos.

El código que estoy haciendo es simple, pero no insertará en la base de datos la cantidad de mensajes que quiero.

 function sendMessage(times){ for(let i = 0; i < times; i++){ console.log(i); // this prints 50 times let messageObj = { user: "testUser" + i, message: "message" + i }; firebase.database().ref("History/" + Date.now()).set(messageObj); // this executes only a random number of times } window.onload = function () { sendMessage(50); }

Aquí hay una imagen de los datos insertados en Firebase Realtime Database.

ingrese la descripción de la imagen aquí

Como puede ver, los datos se están insertando de forma aleatoria. ¿Por qué está pasando esto? Gracias por adelantado.

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

0

El uso Date.now() para el nombre de su nodo dará lugar a que varios nodos terminen en el mismo milisegundo. Y dado que las claves en Firebase son únicas por definición, eso significa que está sobrescribiendo el resultado anterior en la misma marca de tiempo.

Un enfoque ligeramente mejor es incorporar también el valor de i en la clave, lo que garantiza que siempre sean únicos:

 firebase.database().ref("History/" + i + "_" + Date.now()).set(messageObj)

Aún mejor sería usar las operaciones push integradas de Firebase, que evitan este tipo de problema (y muchos otros) por completo:

 firebase.database().ref("History/").push(messageObj)
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