This is a quick reference cheat sheet for understanding and writing JSON format configuration files.
JSON is a lightweight text-based open standard designed for human-readable data interchange.
JSON stands for JavaScript Object Notation JSON is easy to read and write. JSON is language agnostic data-interchange format JSON filename extension is .json JSON Internet Media type is application/json
{
"name": "Jason",
"age": 39,
"height": 1.92,
"gender": "M",
"salary": 70000,
"married": true,
"children": [
{"name": "Tom", "age": 9, "gender":"M"},
{"name": "Ava", "age": 7, "gender":"F"}
]
}
Number — Double precision floating-point
String — Series of characters
Boolean — true or false
Array — Ordered sequence of values
Value — String, Number, Boolean, null etc
Object — Unordered collection of key/value pairs
null — Null or Empty
\" — Double quote
\\ — Backslash
\/ — Forward slash
\b — Backspace
\f — Form feed
\n — Newline
\r — Carriage return
\t — Tab
\u — Trailed by four hex digits
{
"url": "https://ref.softcrony.com",
"msg" : "Hi,\n\"Ref.Softcrony.COM\"",
"intro": "Share tech reference and cheat sheet for developers."
}
{ "foo": 'bar' }
Have to be delimited by double quotes
Integer — Digits 1-9, 0 and positive or negative
Fraction — Fractions like 0.3, 3.9
Exponent — Exponent like e, e+, e-, E, E+, E
{
"positive" : 12,
"negative" : -1,
"fraction" : 10.25,
"exponent" : 1.0E+2,
"zero" : 0
}
{ "foo": 0xFF }
In JSON you can use only Decimal Literals
{
"color": "Purple",
"id": "210",
"composition": {
"R": 70,
"G": 39,
"B": 89
},
"empty_object": {}
}
Multiple key/value pairs separated by a comma
[1, 2, 3, 4, 5]
Begins with [ and ends with ]
{
"children": [
{"name": "Jimmy Smith", "age": 15},
{"name": "Sammy Sosa", "age": 12}
]
}
{
"attributes": ["a1", "a2"],
"methods": ["getter", "setter"],
"empty_array": []
}
{
"my_sequences": [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9, 0],
[10, 11]
]
}
{
"Mark McGwire": {
"hr": 65,
"avg": 0.278
},
"Sammy Sosa": {
"hr": 63,
"avg": 0.288
}
}
{
"Jack": {
"id": 1,
"name": "Franc",
"salary": 25000,
"hobby": ["a", "b"],
"location": {
"country": "A", "city": "A-A"
}
}
}
let myObject = {
"name": "Jason",
"last": "Doe",
"age": 39,
"gender": "M",
"salary": 70000,
"married": true
};
myObject.name — "Jason"
myObject["name"] — "Jason"
myObject.age — 39
myObject.other — undefined
myObject[0] — undefined
let myObject = {
"ref": {
"name": 0,
"last": 1,
"age": 2,
"gender": 3,
"salary": 4,
"married": 5
},
"jdoe": [
"Jason",
"Doe",
39,
"M",
70000,
true
],
"jsmith": [
"Tom",
"Smith",
42,
"F",
80000,
true
]
};
myObject.ref.age — 2
myObject["ref"]["age"] — 2
myObject.jdoe — ["Jason", "Doe", 39 ...]
myObject.jsmith[3] — "F"
myObject[1] — undefined
let myArray = [
{
"name": "Jason",
"last": "Doe",
"age": 39,
"gender": "M",
"salary": 70000,
"married": true
},
{
"name": "Tom",
"last": "Smith",
"age": 42,
"gender": "F",
"salary": 80000,
"married": true
},
{
"name": "Amy",
"last": "Burnquist",
"age": 29,
"gender": "F",
"salary": 60000,
"married": false
}
];
myArray[0] — {"name": "Jason", ...}
myArray[1].name — "Tom"
myArray[1][2] — 42
myArray[3] — undefined
myArray[3].gender — TypeError: Cannot read...
let myArray = [
"Jason",
"Doe",
39,
"M",
70000,
true
];
myArray[1] — "Doe"
myArray[5] — true
myArray[6] — undefined