Usando um reviver JSON.parse para ofuscar campos
Eu estou tentando abusar de uma função reviver com JSON.parse.
Eu basicamente quero fazer certos campos "nulos".
Se eu fizer isso:
var json_data = JSON.parse(j, function(key, value) {
if (key == "name") {
return value;
} else {
return null;
}
});
Todo o objeto json_data termina nulo. Na verdade, não importa o que eu faça o else, isso define o valor do json_object.
Curiosamente, isso funciona como esperado:
var json_data = JSON.parse(j, function(key, value) {
if (key == "name") {
return "name";
} else {
return value;
}
});
A propriedade "nome" agora tem um valor de "nome".
JSON em questão:
var j = '{"uuid":"62cfb2ec-9e43-11e1-abf2-70cd60fffe0e","count":1,"name":"Marvin","date":"2012-05-13T14:06:45+10:00"}';
Atualizar
Eu acabei de perceber que o inverso do que eu quero fazer funciona tão bem que eu posso anular o campo de nome:
var json_data = JSON.parse(j, function(key, value) {
if (key == "name") {
return null;
} else {
return value;
}
});