JSON Path Finder: Menavigasi Struktur JSON yang Kompleks
Kuasai navigasi path JSON dengan JSONPath, jq, dan alat pencari path. Pelajari cara melakukan kueri dan mengekstrak data dari struktur JSON yang bersarang.
Big JSON Team
• Technical WriterExpert in JSON data manipulation, API development, and web technologies. Passionate about creating tools that make developers' lives easier.
Apa itu JSON Path?
JSON Path adalah bahasa kueri untuk JSON, mirip dengan XPath untuk XML. Ini memungkinkan Anda menavigasi dan mengekstrak data tertentu dari struktur JSON yang kompleks.
Sintaksis JSONPath
| Operator | Deskripsi | Contoh |
|----------|-------------|---------|
| $ | Objek akar (root) | $ |
| . | Operator anak | $.store |
| [] | Notasi kurung siku | $['store'] |
| [n] | Indeks array | $.books[0] |
| [] | Wildcard | $.books[] |
| .. | Penurunan rekursif | $..price |
Contoh JSON
{
"store": {
"books": [
{ "title": "1984", "price": 8.99 },
{ "title": "Dune", "price": 12.99 }
]
}
}
Contoh Path
$.store.books[0].title # "1984"
$.store.books[].price # [8.99, 12.99]
$.store.books[?(@.price < 10)] # Buku di bawah $10
Menggunakan Big JSON Viewer
Big JSON Viewer memudahkan pencarian path:
Baris Perintah jq (Command Line)
# Dapatkan field
jq '.store.books[0].title' data.json
# Semua elemen array
jq '.store.books[].title' data.json
# Filter
jq '.store.books[] | select(.price < 10)' data.json
# Transformasi
jq '.store.books | map({title, price})' data.json
JavaScript JSONPath
import { JSONPath } from 'jsonpath-plus';
const data = {
store: {
books: [
{ title: "1984", price: 8.99 },
{ title: "Dune", price: 12.99 }
]
}
};
// Path dasar
const titles = JSONPath({
path: '$.store.books[].title',
json: data
});
// Filter
const cheap = JSONPath({
path: '$.store.books[?(@.price < 10)]',
json: data
});
Python JSONPath
from jsonpath_ng import parse
data = {
"store": {
"books": [
{"title": "1984", "price": 8.99}
]
}
}
expr = parse('$.store.books[].title')
matches = [match.value for match in expr.find(data)]
Pola Umum
Ekstrak semua harga
$..price
Filter berdasarkan kondisi
$.items[?(@.status == "active")]
Dapatkan field bersarang dari array
$.users[].address.city
Beberapa kondisi
$.products[?(@.price > 10 && @.inStock == true)]
Kueri Tingkat Lanjut
Pencarian Rekursif
Temukan semua kemunculan field:
$..email
Pemotongan Array (Array Slicing)
$.users[0:5] # 5 pengguna pertama
$.users[-1] # Pengguna terakhir
$.users[::2] # Setiap pengguna kedua
Praktik Terbaik
Penanganan Kesalahan (Error Handling)
try {
const result = JSONPath({ path: '$.invalid.path', json: data });
if (result.length === 0) {
console.log('Path tidak ditemukan');
}
} catch (error) {
console.error('JSONPath tidak valid:', error);
}
Kesimpulan
Alat path JSON sangat penting untuk bekerja dengan data yang kompleks. Gunakan Big JSON Viewer untuk eksplorasi visual dan jq untuk pemrosesan baris perintah!
Artikel Terkait
Apa itu JSON? Panduan Lengkap untuk Pemula 2026
Pelajari apa itu JSON, sintaksisnya, tipe data, dan kegunaannya. Panduan lengkap dan ramah pemula untuk memahami JavaScript Object Notation.
Alat Online JSON Terbaik 2026: Viewer, Validator, dan Formatter
Panduan komprehensif tentang alat online JSON terbaik. Bandingkan viewer, validator, formatter, dan konverter untuk bekerja dengan data JSON.
Bekerja dengan File JSON Besar: Panduan Performa 2026
Pelajari cara menangani file JSON besar secara efisien. Mencakup parser streaming, optimasi memori, dan alat khusus untuk data besar.