Só pra ser chato e pedante, vamos deixar claro que o que você tem aí não é um JSON.
JSON é apenas um formato de dados. A sigla “JSON” significa “JavaScript Object Notation” (Notação de Objeto JavaScript), e é um formato baseado/inspirado na sintaxe do JavaScript. Mas nem todo código JavaScript é um JSON válido.
Quando você faz isso:
let User_id_1 =
{
"nome": "Link",
"idade": 17,
"cidade": "São Paulo",
"estado": "São Paulo",
}
Na verdade está criando um objeto em JavaScript e colocando-o na variável User_id_1
. Claro que a sintaxe é igual ao que um arquivo JSON teria (a única diferença é que não teria a variável):
{
"nome": "Link",
"idade": 17,
"cidade": "São Paulo",
"estado": "São Paulo",
}
Ou seja, o texto acima é um JSON - que também é um código JavaScript válido, mas o oposto nem sempre é verdade. Por exemplo, em JavaScript eu posso ter isso:
let User_id_1 =
{
"nome": "Link",
"idade": 17,
"cidade": "São Paulo",
"data_nascimento": new Date(1980, 1, 2),
"algum atributo qualquer": function () { console.log('bla') }
}
Mas isso não é um JSON válido. A sintaxe do formato JSON não aceita valores como new Date(1980, 1, 2)
e muito menos a function
que foi definida acima. O valor só pode ser string, número, boolean, null
, um array ou um objeto.
Claro que qualquer objeto pode ser convertido para JSON (desde que se transforme todos os valores para tipos válidos), mas quando você tem código JavaScript, você tem objetos, e não “um JSON”.
Dito isso, para adicionar um novo atributo a um objeto, basta fazer assim:
let User_id_1 =
{
"nome": "Link",
"idade": 17,
"cidade": "São Paulo",
"estado": "São Paulo",
};
User_id_1['Cor Preferida'] = 'Verde';
console.log(User_id_1); // imprima o objeto para ver o novo atributo que foi adicionado