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

120
Vistas
¿Cómo comparar un objeto con otro desde un archivo en el nodo?

Estoy tratando de comparar un objeto que recibo de un evento socket.io con un objeto que está en un archivo en mi computadora. Tengo la mayor parte configurada, puedo hacer que se guarde en el archivo cuando encuentra nuevos datos, sin embargo, los datos parecen superponerse y no estoy seguro de por qué/cómo (ver imagen)

ingrese la descripción de la imagen aquí

Intenté leer este https://dmitripavlutin.com/how-to-compare-objects-in-javascript/ para ver si era un problema con la lectura del archivo o si comparaba los dos objetos para ver qué elemento es nuevo (cuál vendría de los datos de socket.io)

 console.log(collection) const test = new Promise((resolve,reject) => { fs.access(collection, fs.F_OK, function (err) { //initial file access if (!err) { fs.readFile(collection, 'utf8', (err, data) => { // read file for data, if (err) throw err; var dat = JSON.parse(data) var found = [] for(i in dat){ found.push(JSON.stringify(dat[i])) // This is the data that already exists, this is coming from the file. } resolve(found) // resolve }) } }) }) test.then(function(data){ //console.log(data) // This is the data from above for(i in NFTCollection){ // NFTData that was just recieved from the https request (sent from socket.io) var item = JSON.stringify(NFTCollection[i]) // This is each new item var target = client.channels.cache //console.log(data) if(!data.includes(item)){ // This is where i have the issue, how do i compare the object to the object thats in the file? console.log("Found item! " + item) var parsedItem = JSON.parse(item) data.push(JSON.parse(item)) } //console.log(item) } fs.writeFileSync(collection,JSON.stringify(data)) // saves the data from, but it keeps overlapping? }) }) })

Comenté en mi código lo que cada paso está tratando de lograr, el problema está al final. cuando comparo si los elementos de los datos de socket.io existen dentro de los datos que son el archivo node.fs.

about 4 years ago · Juan Pablo Isaza
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