Get the byte size of an object after JSON.stringify
npm i json-sizeof
const { jsonSizeOf } = require('json-sizeof');
const obj = {
str1: 'I am a string!',
obj1: {
str2: 456,
obj2: null,
obj3: undefined
},
};
const bytes = jsonSizeOf(obj);
// expected 57
jsonSizeOf(obj) equals to Buffer.byteLength(JSON.stringify(obj)).
but is faster and less likely to cause "Javascript heap out of memory"
const obj = {};
for (let i = 0;i < 8000000;i++) {
obj['test' + i] = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
}
// expected: 342888891
jsonSizeOf(obj);
// The following line will cause "JavaScript heap out of memory" fatal error
// if you do not maually increase the memory usage of node app.
Buffer.byteLength(JSON.stringify(obj));