JSON is a language of choice for the configuration files. It is easy to read and modify by developers and administrators, it can be easily parsed and loaded by most of the modern languages. Plus, since JSON is a subset of Javascript, if you are coding in Javascript, then you can use JSON elements as part of the language without any additional parsing. That is why JSON is used in many projects. This include package.json and webpack.json files in npm and yarn, CloudFormation, composer.
Still, there are multiple issues why JSON may not be the best choice as configuration file language. First, its lack of comments. It is often useful to comment out parts of configuration file or add comments to some sections. JSON doesn’t support mutliline strings, hexadecimal numbers, and arbitrary precision floating numbers in decimal notation. JSON is quite format restrictive and requires lots of punctuation for correct formatting.
There are several good alternatives for configuration files including YAML, HOCON, and TOML.
AJAJ or JSON AJAX is an alternative technology to AJAX. It is very similar to AJAX but instead of XML language, JSON is used to exchange messages between client and server. Also, many backend systems use JSON to exchange data between components. For example, all ReactJS models are stored in JSON and it uses JSON to propagate data between its components.
JSON-RPC is a protocol similar to XML-RPC and uses JSON for remote procedure calls. JSON-RPC allows a remote call to server functions with multiple parameters stored as JSON. Server can respond to procedure call with a response JSON which also can contain multiple output elements.
JSON and BSON is used to store all the data in MongoDB, MapR and several other document databases. JSON makes it easy to store complex data in a single document and allows to execute queries based on data JSON structure.
File Extension Info | |
---|---|
JavaScript Object Notation | |
MIME TYPE | |
application/json | |
JSON File Opens With | |