**[[JavaScript]] Object Notation - the internet's favorite data storage solution.**
JavaScript Object Notation (JSON) is a lightweight, tree-structured data storage format with support for lists of key-value pairs (aka "[[maps]]"), arrays, and infinite nesting. It's the de facto data storage and transmission standard of the internet. It's widely used and most modern development languages handle JSON natively.
JSON is an example of the [[Less, but Better|less is better]] design philosophy winning out. It has something like 6 rules in it. It doesn't support 5 ways of doing the same thing (like [[YAML]]).
# Benefits over .CSV
- Parsing errors are **very** infrequent
- Parsing is handled natively in many programming languages
- You can represent much more diverse data compared to .CSV
# Drawbacks Compared to .CSV
- JSON takes some level of learning to "pick up". It's not as simple as relational data.
- Cannot just open a .JSON file in Excel
- Keys take up more bytes than do commas
# Limitations
- You cannot have an object that contains a reference to itself
- Pure JSON documents do not allow comments
****
## Source
## Related
- [[CSV]]
- [[Plain Text Durability]]
- [[YAML]]
- [[JSON Schema]]
- [[JSON-LD]]