Skip to content
jsonforge.app
Kembali ke blog
Tutorial15 menit baca

Contoh JSON dalam 7 Bahasa: JavaScript, Python, Go, Rust, PHP, Java, C#

JSON bersifat universal, tetapi setiap bahasa menanganinya secara berbeda. Ini adalah referensi berdampingan untuk parsing, serialisasi, dan penanganan error di tujuh bahasa populer.

JavaScript

JavaScript adalah rumah native JSON. Lakukan parsing dengan JSON.parse, serialisasi dengan JSON.stringify, dan selalu bungkus parsing dalam try/catch.

// Parse a JSON string into an object
const data = JSON.parse('{"name": "Alice", "age": 30}');
console.log(data.name); // "Alice"

// Serialize an object back to JSON
const json = JSON.stringify(data, null, 2);

// Fetch JSON from an API
const res = await fetch("/api/users/1");
const user = await res.json(); // parsed automatically

Python

Modul json bawaan Python memetakan object JSON ke dict dan array ke list. Gunakan json.loads (string → object) dan json.dumps (object → string).

import json

# Parse JSON string into a dict
data = json.loads('{"name": "Alice", "age": 30}')

# Serialize a dict to a pretty JSON string
text = json.dumps(data, indent=2, ensure_ascii=False)

# Read/write a JSON file
with open("data.json", encoding="utf-8") as f:
    data = json.load(f)

Go

Paket encoding/json milik Go memetakan JSON ke struct melalui tag. Gunakan json.Marshal untuk serialisasi dan json.Unmarshal untuk parsing, dengan struct tag mengatur nama field.

type User struct {
    Name string   `json:"name"`
    Age  int      `json:"age"`
}

// Struct → JSON
b, _ := json.Marshal(User{Name: "Alice", Age: 30})

// JSON → struct
var u User
_ = json.Unmarshal([]byte(`{"name":"Bob","age":25}`), &u)

Rust, PHP, Java, C#

Rust menggunakan crate serde dan serde_json untuk (de)serialisasi yang aman tipe dan tanpa biaya (zero-cost). PHP memiliki json_encode/json_decode native tanpa dependensi. Java umumnya menggunakan ObjectMapper dari Jackson. C# modern menggunakan System.Text.Json.

<?php
// PHP array → JSON
$json = json_encode(["name" => "Alice", "age" => 30],
    JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);

// JSON → PHP array
$data = json_decode($json, true);
if (json_last_error() !== JSON_ERROR_NONE) {
    echo "JSON error: " . json_last_error_msg();
}

Praktik terbaik universal

Selalu tangani error parsing — JSON yang rusak akan membuat kode tak terlindungi crash. Untuk API produksi, validasi terhadap JSON Schema sebelum diproses. Utamakan struct/class bertipe daripada map generik di bahasa compiled. Pretty-print saat pengembangan, minify saat produksi.

FAQ

Bahasa mana yang memiliki parser JSON tercepat?
Bahasa compiled (Go, Rust, Java dengan Jackson, C# dengan System.Text.Json) umumnya mengungguli bahasa interpreted. Untuk sebagian besar aplikasi, perbedaannya dapat diabaikan dibandingkan dengan biaya jaringan dan database.
Apakah saya harus menggunakan struct bertipe atau map generik?
Struct/class bertipe menangkap ketidaksesuaian schema saat compile time dan memberi Anda autocomplete. Gunakan map generik hanya ketika bentuknya benar-benar dinamis atau tidak diketahui.

Artikel terkait