[JS]JaveScript中的JSON

JSON, JavaScript Object Notation,是老道(Douglas Crockford)受js的字面量表示法启发而创造的一种数据交换格式。
JSON 的设计目标是成为一个极简的,轻便的和文本式的 JavaScript 子集。实现互通所需要的共识越少,互通就越容易实现。

我们开发中常见的JSON,形如下面这样
{
“color”: “red”,
“shape”: “square”,
“age”: 13
}

但实际上JSON 格式不是仅有上面这样的。
JSON可用格式如下:
1、纯数字。如 333 是JSON。
2、双引号包裹的字符串,如“六六六”是JSON。(单引号的‘六六六’不是)
3、布尔值。单独的true 或者 单独的false 是JSON。
4、特殊字符null是json。 (注意undefined,NaN,Infinity 不是json)
5、数组。(注意数组里不能出现undefined,NaN,Infinity)
6、JSON对象。 (注意: key都必须用双引号)

[JS]JaveScript中的JSON_第1张图片
[JS]JaveScript中的JSON_第2张图片
image.png
image.png
(判定标准,参考这个网站https://jsonlint.com/

此外 function() {} 不是JSON。

所以在用JSON.parse(JSON.stringify(obj))的时候,undefined, NaN, Infinity, function 都被忽略。

同步更新到自己的语雀
https://www.yuque.com/diracke...

你可能感兴趣的:([JS]JaveScript中的JSON)