JSON for Beginners — Learn JSON in 30 Minutes
JSON looks intimidating to beginners. All those curly braces, square brackets, colons. Looks like alien code. But JSON is actually the simplest data format ever invented. Once you see how it works, you'll wonder why anyone uses anything else.
Every API uses JSON. Every modern config file uses JSON. JavaScript runs on JSON. Python loves JSON. If you work with data online, you'll meet JSON within your first week.
What JSON Actually Is
JSON stands for JavaScript Object Notation. It's a way to write structured data using plain text. Computers and humans can both read it. That's the whole magic.
Here's the simplest possible JSON:
{"name": "Alice", "age": 30}
Two pieces of information about Alice. Wrapped in curly braces. Each piece has a name (the "key") and a value. That's it. You now know JSON basics.
→ Try our free JSON formatter tool
JSON Building Blocks
Strings
Text wrapped in double quotes. Always double quotes, never single.
"name": "Alice"
Numbers
No quotes. Integers and decimals work.
"age": 30, "height": 5.7
Booleans
True or false. Lowercase. No quotes.
"isActive": true, "isPremium": false
Null
Means empty or missing. No quotes.
"middleName": null
Arrays
Lists of values in square brackets, separated by commas.
"hobbies": ["reading", "hiking", "coding"]
Objects
Curly braces containing key-value pairs. Objects can hold other objects.
"address": {"city": "New York", "zip": "10001"}
Putting It All Together
Real JSON combines all building blocks:
{"name": "Alice", "age": 30, "isActive": true, "hobbies": ["reading", "coding"], "address": {"city": "NYC"}}
This describes a complete person record. APIs return data exactly like this. Once you can read this, you can read 99% of API responses.
JSON Rules You Must Follow
JSON is strict. Break these rules and your code crashes:
- Always use double quotes for strings, never single
- Keys must be in quotes (unlike JavaScript objects)
- No trailing commas after the last item
- No comments allowed in JSON files
- All braces and brackets must be matched
These rules sound annoying but make JSON parseable by any programming language.
JSON vs XML vs CSV
JSON
Compact, structured, supports nesting. Modern standard.
XML
Verbose, lots of tags, supported everywhere but rarely used in new projects.
CSV
Simple comma-separated values. Great for spreadsheets. Bad for nested data.
Use JSON for APIs and config. Use CSV for simple tabular data. Avoid XML unless required.
Real-World JSON Examples
API Response
When you call a weather API, you get back JSON like this:
{"city": "London", "temp": 12, "condition": "rainy"}
Your app parses this and shows the weather. Every weather, sports, or news API works similarly.
Config Files
App settings stored as JSON:
{"theme": "dark", "language": "en", "notifications": true}
Modern apps store user preferences this way.
Package Manifests
Node.js projects use package.json:
{"name": "my-app", "version": "1.0.0", "dependencies": {"react": "^18.0.0"}}
Lists what libraries the project uses.
Common JSON Mistakes
Mistake 1: Single Quotes
{'name': 'Alice'} — INVALID. Always double quotes.
Mistake 2: Trailing Comma
{"name": "Alice", "age": 30,} — INVALID. No comma after last item.
Mistake 3: Comments
JSON doesn't allow // comments. Use a config format that does (YAML, JSON5) if you need them.
Mistake 4: Missing Brackets
Forgetting one closing brace breaks the entire file. Use a JSON formatter to spot these.
Validating JSON
Before sending JSON anywhere, validate it. Free online JSON formatters check syntax instantly. They'll tell you exactly which line has the error.
Pro tip: copy any JSON you don't trust into a formatter. It will reveal errors you'd never spot manually.
JSON Formatting and Beautification
Compact JSON is great for transmission. Pretty-printed JSON is great for reading.
Compact
{"name":"Alice","age":30}
Pretty
{
"name": "Alice",
"age": 30
}
Both are valid JSON. The second is easier to read. JSON formatters convert between them.
Bad JSON is worse than no data at all. Always validate before sending. Always format before debugging.
JSON in Different Languages
JavaScript
JSON.parse(text) converts JSON string to object. JSON.stringify(obj) converts back.
Python
import json; json.loads(text) to parse. json.dumps(obj) to convert.
PHP
json_decode($text) and json_encode($obj).
Every language has built-in JSON support. No extra libraries needed.
JSON to CSV Conversion
Sometimes you need JSON data as a CSV (for spreadsheets). Free converters handle this:
[{"name":"Alice","age":30},{"name":"Bob","age":25}]
Becomes:
name,age
Alice,30
Bob,25
Practice Exercises
To learn JSON, write some yourself. Try these:
- Write JSON describing yourself (name, age, hobbies, address)
- Write JSON for a book (title, author, pages, chapters array)
- Write JSON for a shopping cart (items array, total, customer)
- Validate each in a JSON formatter
- Convert one to CSV using a JSON to CSV converter
After writing 3-4 JSON files, the syntax becomes muscle memory. You'll never struggle with it again.
Why Learning JSON Matters
JSON is everywhere. APIs, configs, databases, browsers. Understanding JSON unlocks reading API documentation. Building integrations. Debugging issues. It's the lingua franca of modern web development.
Spend 30 minutes practicing JSON. Use a free formatter. Look at real API responses. Within an hour you'll be reading JSON like English. The skill pays dividends forever.