xgqfrms™, xgqfrms® : xgqfrms's offical website of cnblogs! xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!

JSON.stringify() You Don't Know All In One

JSON.stringify() You Don't Know All In One

JSON.stringify()

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify

https://www.freecodecamp.org/news/json-stringify-method-explained/

demos

console.log(JSON.stringify({ x: 5, y: 6 }));
// expected output: "{"x":5,"y":6}"

console.log(JSON.stringify({ x: 5, y: 6 }, null, undefined));
console.log(JSON.stringify({ x: 5, y: 6 }, null, null));


console.log(JSON.stringify({ x: 5, y: 6, z: 7, }, ['x'], null));
console.log(JSON.stringify({ x: 5, y: 6, z: 7, }, ['x', 'y'], null));


console.log(JSON.stringify({ x: 5, y: 6, z: 7, }, ['x', 'y'], '  '));
console.log(JSON.stringify({ x: 5, y: 6, z: 7, }, ['x', 'y'], '👻👻'));
console.log(JSON.stringify({ x: 5, y: 6, z: 7, }, ['x', 'y'], 2));

console.log(JSON.stringify({ x: 5, y: 6, z: 7, }, ['x', 'y'], 10));
console.log(JSON.stringify({ x: 5, y: 6, z: 7, }, ['x', 'y'], 11));

/*


*/



solution

undefined => null


const autoConvertundefinedToNull = (obj, replacer = null, spaces = 4) => {
  return JSON.stringify(
    obj,
    (k, v) => v !== undefined ? v : replacer,
     spaces,
  );
};
// undefined

const obj = {
  "name" : "xgqfrms",
  "email" : undefined,
  "age" : null
};
// undefined

autoConvertundefinedToNull(obj);
/*
"{
    "name": "xgqfrms",
    "email": null,
    "age": null
}"
*/

https://stackoverflow.com/questions/26540706/preserving-undefined-that-json-stringify-otherwise-removes

refs

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify

https://www.cnblogs.com/xgqfrms/tag/JSON.stringify/



©xgqfrms 2012-2020

www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!

原创文章,版权所有©️xgqfrms, 禁止转载 🈲️,侵权必究⚠️!


posted @ 2021-03-13 18:18  xgqfrms  阅读(70)  评论(10编辑  收藏  举报