JavaScript y JSON

JSON.stringify en JavaScript

Guía práctica para entender cómo convertir objetos JavaScript a texto JSON, cuándo usar indentación y qué detalles pueden provocar resultados inesperados.

Qué hace JSON.stringify

JSON.stringify() convierte un valor de JavaScript en un string JSON. Se usa para enviar datos a una API, guardar configuraciones o crear una representación textual de un objeto.

Ejemplo básico

Objeto JavaScript
const usuario = {
  id: 7,
  nombre: "Ana",
  activo: true
};
Resultado JSON
{"id":7,"nombre":"Ana","activo":true}

Formatear con indentación

El tercer parámetro permite generar un JSON más legible para revisar o pegar en documentación.

JSON.stringify con espacios
const texto = JSON.stringify(usuario, null, 2);

Detalles que suelen confundir

  • undefined, funciones y símbolos no son valores JSON.
  • NaN e Infinity no existen como números JSON válidos.
  • Un objeto Date suele convertirse a string ISO.
  • El orden de propiedades no debería usarse como garantía semántica.

Cuándo usarlo

Úsalo cuando el origen sea un objeto JavaScript y necesites obtener JSON. Si ya tienes texto pegado desde una API o archivo, primero conviene revisarlo con Validar JSON online.

Guías relacionadas

Preguntas frecuentes

¿JSON.stringify valida un objeto?

No exactamente. Convierte un valor JavaScript a texto JSON cuando puede representarlo, pero no sustituye una validación de datos o estructura.

¿Qué pasa con undefined?

En objetos, las propiedades con undefined se omiten. En arrays, esos valores suelen convertirse en null.

¿JSON.stringify formatea el resultado?

Puede hacerlo si usas el tercer parámetro, por ejemplo JSON.stringify(objeto, null, 2) para indentación de dos espacios.