JSON.parse和JSON.stringify的几个技巧

利用try catch + JSON.parse判断字符串是否符合json格式
try {
  JSON.parse(myString);
} catch (error) {
  console.log(error)
}
JSON.parse(text[, reviver])

reviver为一个函数,将对象的每个成员调用此函数再输出结果

JSON.stringify(value[, replacer [, space]])
  • value : undefined、任意的函数以及 symbol 值,在序列化过程中会被忽略(出现在非数组对象的属性值中时)或者被转换成 null(出现在数组中时)。
  • replacer : 为一个函数或数组。为函数时,将对象的每个成员调用此函数再输出结果。为数组时,若value解析为对象,仅处理键值存在于该数组中的项;若value解析为数组,忽略replacer。
  • space : 用于格式化输出结果,一般输入4。如不传则最后输出一个长行。

注意,对ES6中的class所生成的实例,若添加了不属于该class的属性,经过json.stringify处理后会丢失

你可能感兴趣的:(JSON.parse和JSON.stringify的几个技巧)