Por qué JSON.stringify elimina valores undefined

Descubre por qué JSON.stringify elimina los valores undefined y cómo solucionarlo. Aprende a usar replacer y evita errores en APIs y bases de datos.

2 jun 2026 • 4 min de lectura • Equipo Q2BSTUDIO

Cómo evitar que undefined desaparezca al serializar JSON

Cuando trabajamos con objetos JavaScript y los convertimos a JSON mediante JSON.stringify(), muchos desarrolladores se llevan una desagradable sorpresa al comprobar que las propiedades con valor undefined desaparecen sin previo aviso. No se produce ningún error, ninguna advertencia, ningún rastro en la consola. Sencillamente, el campo deja de existir en la cadena JSON resultante. Este comportamiento, lejos de ser un bug, está estrictamente definido por la especificación JSON, que solo admite un conjunto limitado de tipos: cadenas, números, booleanos, nulos, objetos y arrays. undefined no forma parte de ese conjunto, por lo que el serializador lo omite de forma silenciosa. Comprender esta sutileza es crucial para evitar errores difíciles de depurar en entornos productivos, especialmente cuando se envían peticiones a APIs, se actualizan bases de datos o se generan logs de auditoría.

Imaginemos una aplicación que envía datos de perfil de usuario a un backend. Si el objeto contiene un campo email: undefined, tras la serialización ese campo desaparece, y el servidor recibe un objeto sin esa propiedad. La diferencia entre { email: null } y { } puede tener consecuencias muy distintas en operaciones de actualización parcial (PATCH). Un valor nulo podría interpretarse como 'eliminar el email', mientras que la ausencia del campo podría leerse como 'no modificar el email'. Para proyectos que requieren un control preciso de los datos, como los que desarrollamos en Q2BSTUDIO, esta distinción es fundamental. Por eso, al diseñar aplicaciones a medida, siempre definimos contratos claros entre cliente y servidor, estableciendo qué significa cada estado posible del campo.

La solución más común para evitar la desaparición de propiedades es convertir explícitamente los valores undefined a null mediante una función de reemplazo en el propio JSON.stringify. Por ejemplo, usar un segundo argumento que evalúe cada par clave-valor y sustituya undefined por null. Este enfoque, aunque sencillo, puede volverse tedioso en proyectos grandes. Por eso, en entornos profesionales se suele crear un serializador reutilizable, como una función safeStringify, que garantice un comportamiento homogéneo en todos los servicios. En Q2BSTUDIO, cuando implementamos servicios cloud AWS y Azure, integramos este tipo de utilidades en nuestras librerías internas para que la serialización de datos sea predecible y segura, especialmente en sistemas distribuidos que intercambian información entre microservicios.

Otro escenario donde esta peculiaridad pasa factura es en la persistencia con bases de datos orientadas a documentos, como MongoDB, o con ORMs como Prisma, Sequelize o TypeORM. Muchas de estas herramientas diferencian entre un campo ausente y un campo con valor nulo, y esa diferencia puede desencadenar comportamientos inesperados, como no actualizar un registro o eliminar un dato por error. Al auditar estos flujos en proyectos de inteligencia artificial o servicios inteligencia de negocio, hemos visto cómo un undefined mal gestionado puede corromper modelos de datos o alterar reportes en Power BI. Por ello, recomendamos validar y limpiar los objetos antes de serializarlos, usando funciones como removeUndefined que filtren explícitamente las propiedades no deseadas, haciendo visible la transformación.

Para equipos que desarrollan software a medida o integran agentes IA en sus procesos, la consistencia de los datos es un pilar de calidad. Algo tan aparentemente trivial como la desaparición de un campo puede provocar fallos en la lógica de negocio, generar inconsistencias en la caché o complicar la depuración de peticiones API. Por eso, en Q2BSTUDIO formamos a nuestros desarrolladores para que comprueben siempre el JSON final antes de enviarlo, utilizando console.log(JSON.stringify(payload)) en lugar de limitarse a inspeccionar el objeto original. Este simple hábito ahorra horas de troubleshooting, especialmente cuando se trabaja con ciberseguridad y pentesting, donde la integridad de cada campo puede ser crítica.

En definitiva, JSON.stringify no elimina valores undefined por capricho, sino por definición. La responsabilidad recae en el desarrollador para gestionar esa transformación de forma explícita. Ya sea usando un replacer, un serializador personalizado o una etapa de limpieza previa, lo importante es no dejar que la omisión silenciosa de campos ocasione bugs difíciles de rastrear. Si tu proyecto necesita un enfoque robusto y profesional para el manejo de datos, en Q2BSTUDIO ayudamos a empresas a diseñar arquitecturas eficientes que integren servicios cloud AWS y Azure, Power BI y IA para empresas, asegurando que cada byte tenga el significado correcto desde el cliente hasta la base de datos.

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.

Live Chat