你会遇到的数据类型
JSON 里的每个值,都属于一小组类型中的一种。认识它们,能让你看出某个值的类型错了——这是一个常见的 bug 来源。
- string —— 文本,总是带双引号:
"Ada Lovelace"、"[email protected]"。 - number —— 一个普通的数字,不带引号:
42、3.14。(引号会改变含义:"42"是文本四二,不是数字。) - boolean ——
true或false,不带引号。用于像"isAdmin"这样的是/否标志。 - null —— 一个刻意的"这里没有值"。
"avatarUrl": null表示这个用户没有头像——这和这个键根本不存在是两回事。 - array —— 一个有序列表:
["beta", "early-access"]。 - object —— 一捆键/值对:那个
"profile"块。
整套词汇就这些了。现实中最常见的错误是 string 与 number 的陷阱:代码期待的是数字 42,但 API 发来的是字符串 "42",于是一次比较就悄无声息地失败了。当某个东西表现得很怪时,检查一个值的类型往往就是解药。