O segundo parametro de JSON.stringify que muita gente ignora
2025-04-01
JSON.stringify(obj) nao e tudo: replacer controla quais chaves saem e space define indentacao para logs, mocks e armazenamento.
replacer como array = lista branca
Ao passar ['id', 'name'], so essas chaves entram na serializacao no nivel correspondente.
JSON.stringify(user, ["id", "name"]);replacer como funcao
Voce pode retornar undefined para omitir, esconder senhas ou customizar datas.
JSON.stringify(obj, (k, v) => k === "password" ? undefined : v);space para legibilidade
O terceiro argumento aceita 2 ou '\t' para JSON legivel; sem ele, saida compacta.
toJSON
Objetos podem definir toJSON; Date ja serializa para string ISO por padrao.