Back to Blog
🎓Tutorials

How to Parse JSON: A Beginner's Guide

2024-01-207 min readJSON Toolset Team
#JSON#parsing#tutorial#programming

How to Parse JSON

Parsing JSON means converting JSON text into a data structure that your programming language can work with.

JavaScript

Parse JSON String

const jsonString = '{"name":"John","age":30}';
const obj = JSON.parse(jsonString);
console.log(obj.name); // "John"

Convert to JSON

const obj = { name: "John", age: 30 };
const jsonString = JSON.stringify(obj);
console.log(jsonString); // '{"name":"John","age":30}'

Pretty Print

const formatted = JSON.stringify(obj, null, 2);

Python

Parse JSON

import json

json_string = '{"name":"John","age":30}'
data = json.loads(json_string)
print(data['name'])  # John

Convert to JSON

data = {"name": "John", "age": 30}
json_string = json.dumps(data)

Pretty Print

formatted = json.dumps(data, indent=2)

PHP

Parse JSON

$jsonString = '{"name":"John","age":30}';
$data = json_decode($jsonString, true);
echo $data['name']; // John

Convert to JSON

$data = ['name' => 'John', 'age' => 30];
$jsonString = json_encode($data);

Java

Parse JSON (using org.json)

import org.json.JSONObject;

String jsonString = "{\"name\":\"John\",\"age\":30}";
JSONObject obj = new JSONObject(jsonString);
System.out.println(obj.getString("name")); // John

Error Handling

JavaScript

try {
  const data = JSON.parse(jsonString);
} catch (error) {
  console.error('Invalid JSON:', error.message);
}

Python

try:
    data = json.loads(json_string)
except json.JSONDecodeError as e:
    print(f'Invalid JSON: {e}')

Common Parsing Errors

1. Trailing Commas

❌ Invalid:

{"name": "John", "age": 30,}

✅ Valid:

{"name": "John", "age": 30}

2. Single Quotes

❌ Invalid:

{'name': 'John'}

✅ Valid:

{"name": "John"}

3. Unquoted Keys

❌ Invalid:

{name: "John"}

✅ Valid:

{"name": "John"}

Best Practices

  1. Always validate JSON before parsing
  2. Handle errors gracefully
  3. Use try-catch blocks
  4. Validate data types after parsing
  5. Use schema validation for complex JSON

Use our JSON Validator to check your JSON before parsing!