JSON

JavaScript Object Notation (JSON)JSON-likedictionaryJavaScript Object NotationJSJSON objectJSON schema
In computing, JavaScript Object Notation (JSON) ( "jay-son", ) is an open-standard file format that uses human-readable text to transmit data objects consisting of attribute–value pairs and array data types (or any other serializable value).wikipedia
575 Related Articles

Douglas Crockford

Douglas Crockford originally specified the JSON format in the early 2000s; two competing standards, and ECMA-404, defined it in 2017.
Douglas Crockford is an American computer programmer and entrepreneur who is best known for his ongoing involvement in the development of the JavaScript language, for having popularized the data format JSON (JavaScript Object Notation), and for developing various JavaScript related tools such as JSLint and JSMin.

Attribute–value pair

key-value pairattribute-value pairname-value pair
In computing, JavaScript Object Notation (JSON) ( "jay-son", ) is an open-standard file format that uses human-readable text to transmit data objects consisting of attribute–value pairs and array data types (or any other serializable value). Object: an unordered collection of name–value pairs where the names (also called keys) are strings. Since objects are intended to represent associative arrays, it is recommended, though not required, that each key is unique within an object. Objects are delimited with curly brackets and use commas to separate each pair, while within each pair the colon ':' character separates the key or name from its value.
Some data serialization formats such as JSON support arbitrarily deep nesting.

Web service

web serviceswebserviceservice
In December 2005, Yahoo! began offering some of its Web services in JSON.
In a web service, the Web technology such as HTTP—originally designed for human-to-machine communication—is utilized for machine-to-machine communication, more specifically for transferring machine-readable file formats such as XML and JSON.

JavaScript

JSclient-side JavaScriptserver-side JavaScript
It was derived from JavaScript, but many programming languages include code to generate and parse JSON-format data. JSON was originally intended to be a subset of the JavaScript scripting language (specifically, Standard ECMA-262 3rd Edition—December 1999 ) and is commonly used with Javascript, but it is a language-independent data format.
In fact, these literals form the basis of the JSON data format.

JSONP

This subtlety is important when generating JSONP.
JSONP (JSON with Padding or JSON-P ) is a javascript pattern to request data by loading a tag.

File format

formatformatsfile formats
In computing, JavaScript Object Notation (JSON) ( "jay-son", ) is an open-standard file format that uses human-readable text to transmit data objects consisting of attribute–value pairs and array data types (or any other serializable value).
JSON is similar to XML without schemas, cross-references, or a definition for the meaning of repeated field-names, and is often convenient for programmers.

Associative array

mapdictionariesdictionary
Object: an unordered collection of name–value pairs where the names (also called keys) are strings. Since objects are intended to represent associative arrays, it is recommended, though not required, that each key is unique within an object. Objects are delimited with curly brackets and use commas to separate each pair, while within each pair the colon ':' character separates the key or name from its value.
Using notation from Python or JSON, the data structure would be:

License compatibility

compatibleincompatiblecompatibility
On the other hand, this clause led to license compatibility problems of the JSON license with other open-source licenses.
JSON developer Douglas Crockford, inspired by the words of then President Bush, formulated the "evil-doers" JSON license ("The Software shall be used for Good, not Evil.") in order to open-source the JSON libraries but also to force (troll) corporate lawyers (or those who are overly pedantic) to pay for a license from the state.

ECMAScript

ES6ECMAScript 6ECMA
, all major browsers support at least the fifth edition ECMAScript which provides a safe and fast method of decoding JSON:
These fixes and others, and support for JSON encoding/decoding, have been folded into the ECMAScript, 5th Edition specification.

XML

Extensible Markup LanguageExtensible Markup Language (XML).xml
It is a very common data format used for asynchronous browser–server communication, including as a replacement for XML in some AJAX-style systems.
JSON, YAML, and S-Expressions are frequently proposed as simpler alternatives (see Comparison of data serialization formats); that focus on representing highly structured data rather than documents, which may contain both highly structured and relatively unstructured content.

Ajax (programming)

AjaxAJAX-basedAsynchronous JavaScript and XML
It is a very common data format used for asynchronous browser–server communication, including as a replacement for XML in some AJAX-style systems.
In practice, modern implementations commonly utilize JSON instead of XML due to the advantages of JSON being native to JavaScript.

Ecma International

ECMAEuropean Computer Manufacturer's AssociationEuropean Computer Manufacturers Association
JSON was originally intended to be a subset of the JavaScript scripting language (specifically, Standard ECMA-262 3rd Edition—December 1999 ) and is commonly used with Javascript, but it is a language-independent data format.
ECMA-404 – JSON

Newline

line feedLFend of line
Only four specific characters are considered whitespace for this purpose: space, horizontal tab, line feed, and carriage return.
YAML no longer recognizes them as special, in order to be compatible with JSON.

XMLHttpRequest

XHRXMLHTTPXHR2
The following JavaScript code is an example of a client using XMLHttpRequest to request data in JSON format from a server.
Despite the name, XHR can be used with protocols other than HTTP and data can be in the form of not only XML, but also JSON, HTML or plain text.

YAML

yml
Apart from XML, examples could include OGDL, YAML and CSV.
It uses both Python-style indentation to indicate nesting, and a more compact format that uses [] for lists and {} for maps making YAML 1.2 a superset of JSON.

JSON-RPC

JSON IPCJSON RPC
JSON-RPC is a remote procedure call (RPC) protocol built on JSON, as a replacement for XML-RPC or SOAP.
JSON-RPC is a remote procedure call protocol encoded in JSON.

GeoJSON

GeoJSON—an open format for encoding a variety of geographic data structures
It is based on JSON, the JavaScript Object Notation.

BSON

BSON
The name "BSON" is based on the term JSON and stands for "Binary JSON".

JSON streaming

JSON streaming
JSON streaming comprises communications protocols to delimit JSON objects built upon lower-level stream-oriented protocols (such as TCP), that ensures individual JSON objects are recognized, when the server and clients use the same one (e.g. implicitly coded in).

JSON-LD

JSON-LD—JavaScript object notation for linked data, a W3C recommendation
JSON-LD (JavaScript Object Notation for Linked Data), is a method of encoding Linked Data using JSON.

Serialization

serializeddata serializationserializable
Other languages may have a different set of native types that must be serialized carefully to deal with this type of conversion.
JSON is a lighter plain-text alternative to XML which is also commonly used for client-server communication in web applications.

HOCON

HOCON—Human-Optimized Config Object Notation, a superset of JSON
HOCON, or Human-Optimized Config Object Notation is a format for human-readable data, and a superset of JSON and .properties.

JsonML

JsonML
JsonML, the JSON Markup Language is a lightweight markup language used to map between XML (Extensible Markup Language) and JSON (JavaScript Object Notation).

UBJSON

UBJSON
It is a binary form directly imitating JSON, but requiring fewer bytes of data.

Remote procedure call

RPCremote procedure callsremoting
JSON-RPC is a remote procedure call (RPC) protocol built on JSON, as a replacement for XML-RPC or SOAP.
JSON-RPC is an RPC protocol that uses JSON-encoded messages