What is JSON?

JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999. JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language.

Ref.: json.org

An object is an unordered set of name/value pairs. An object begins with { (left brace) and ends with } (right brace). Each name is followed by : (colon) and the name/value pairs are separated by , (comma).

alt text
(source: json.org)

An array is an ordered collection of values. An array begins with [ (left bracket) and ends with ] (right bracket). Values are separated by , (comma).

alt text
(source: json.org)

A value can be a string in double quotes, or a number, or true or false or null, or an object or an array. These structures can be nested.

alt text
(source: json.org)

A string is a collection of zero or more Unicode characters, wrapped in double quotes, using backslash escapes. A character is represented as a single character string. A string is very much like a C or Java string.

alt text
(source: json.org)

A number is very much like a C or Java number, except that the octal and hexadecimal formats are not used. alt text
(source: json.org)

Here is an example:

{
    "menu": {
        "id": "file",
        "value": "File",
        "popup": {
            "menuitem": [{
                "onclick": "CreateNewDoc()"
            }, {
                "value": "Open",
                "onclick": "OpenDoc()"
            }, {
                "value": "Close",
                "onclick": "CloseDoc()"
            }]
        }
    }
}

And in XML the same thing would have been:

<menu id="file" value="File">
  <popup>
    <menuitem value="New" onclick="CreateNewDoc()" />
    <menuitem value="Open" onclick="OpenDoc()" />
    <menuitem value="Close" onclick="CloseDoc()" />
  </popup>
</menu>

Ref.: json.org

Hope you now get an idea of what is JSON.


From Wikipedia: JSON (Javascript object notation)

The JSON format is often used for transmitting structured data over a network connection in a process called serialization. Its main application is in Ajax web application programming, where it serves as an alternative to the use of the XML format.


The in-depth version seems to be well covered, maybe you're looking for the short-and-simplified version?

JSON is basically just a way to pass an array from one language to another.

It's used a lot for Ajax (amongst other things) because with Ajax you typically have a server-side language (PHP etc.) passing a set of results to a client-side language (javascript). Your javascript calls your PHP page with some parameters; your PHP page builds an array and echos it encodes it to JSON format; your javascript catches the JSON and decodes it back to an array to process.

There's more to it than that obviously (and for that reason I'm expecting a flurry of tear-streaked downvotes :) ), but that's all you need to get up and running with it.

Tags:

Json