I was reading this great article on JSON.stringify
by Valeri Karpov when I discovered something I didn't know before.
You can use JSON.stringify
to serialize objects and store them let's say in localStorage
. It turns out that JSON.stringify
checks if the object to serialize includes a toJSON
method. If it does it will use this method to evaluate the result of the serialization.
const zoo = {
animals: {
list: ['cat', 'dog', 'duck'],
// toJSON will be called by JSON.stringify
toJSON: () => {
return ['๐ฑ', '๐ถ', '๐ฆ']
}
}
}
console.log(JSON.stringify(zoo, null, 2));
By including a toJSON
method you can manipulate the data that should go into serialization. You can use this functionality to e.g. clean up logs and not store sensitive information in a database. Pretty sweet. ๐
If you want to learn more you can check MDN or have a look at a chapter of Exploring JavaScript written by Axel Rauschmayer.
Top comments (0)