Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save kiaratto/afb6bb9acd21d0dda37157eb3a92ec2f to your computer and use it in GitHub Desktop.
Save kiaratto/afb6bb9acd21d0dda37157eb3a92ec2f to your computer and use it in GitHub Desktop.
Converte um objeto com funções em um objeto somente com propriedades | Convert an object with functions in only object with properties.
//==============================
//Autor:Rodrigo Chiarato
//Data: 08/12/2016
//Local: São Paulo - Brasil
//Descrição: essa necessidade surgiu por conta de uma dúvida resgistrada aqui no StackOverflow no link..
// http://stackoverflow.com/questions/41046055/json-stringify-messed-up-my-date-object/41046690#41046690
// no post o desenvolvedor usa o comando console.log para mostrar uma data no browser e essa data é exibida
// da seguinte maneira: "Wed Dec 07 2016 10:02:37 GMT-0800 (Pacific Standard Time)"
// Essa data está gravada como date em um objeto, porém quando ele utiliza o comando JSON.stringify a data aparece assim: 2016-12-07T18:02:37.223Z
// Minha sugestão para esse post foi que ele criasse uma função no objeto que retornasse a data.toString() , dessa maneira
// quando ele utilizasse o JSON.stringify utilizaria nesse novo objeto que tem o retorno igual do console.log
// Esse foi o motivo da função.
//============================
function(YourObject) {
var OBJ = {} ;
for(x in YourObject)
{
if (typeof(YourObject[x]) !== "function")
eval("OBJ." + x + " = '" + YourObject[x] + "'");
else
eval("OBJ." + x + " = '" + YourObject[x]() + "'");
}
var strOBJ = JSON.stringify(OBJ);
return strOBJ;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment