JSON (JavaScript Object Notation) merupakan format pertukaran data yang berdasarkan notasi JavaScript. Notasi ini mudah ditulis dan dibaca oleh manusia, dan juga mudah diterjemahkan dan dibuat oleh mesin. JSON merupakan format berbasis teks yang tidak tergantung terhadap platform. Notasi yang digunakan sangat umum digunakan dalam bahasa pemprograman keluarga C seperti C, C++, C#, Java, JavaScript, Perl, Python dan sejenisnya.
JSON dibangun di atas dua struktur.

  • Kumpulan pasangan kunci dan nilai, yang dinyatakan sebagai sebuah obyek, rekaman (record), struct, kamus (dictionary), tabel hash
  • Nilai-nilai yang urut, dalam beberapa bahasa pemprograman dinyatakan sebagai sebuah larik (array), vector, list atau sequence.

JSON pertama kali diperkenalkan oleh Douglas Crockford, seorang arsitek JavaScript di Yahoo!.
Tipe data JSON dasar diantaranya:

  • Angka
  • String
  • Boolean
  • Array
  • Object
  • null

Contoh penulisan JSON:

  "namaDepan"    : "Ahmad"
  "namaBelakang" : "Masykur"
  "umur"         : 30, 
  "alamat"       :  
  
    "jalan"      : "Jalan Gurami IV"
    "kota"       : "Bekasi"
    "propinsi"   : "Jawa Barat"
  },
  "nomorTelepon" :
  [
    {
      "jenis"    : "rumah",
      "nomor"    : "(021) 5567-123"
    },
    {
      "jenis"    : "HP",
      "nomor"    : "0815-567-123"
    }
  ]
}

JSON lebih populer digunakan sebagai pertukaran data pada AJAX, karena dapat secara langsung dikenali oleh bahasa pemprograman yang berjalan di atas browser yaitu JavaScript.
Pada beberapa bahasa pemprograman modern sudah mendukung JSON tanpa pustaka tambahan. Di Microsoft .NET Framework, sudah disediakan pustaka untuk menulis dan membaca JSON menggunakan System.Runtime.Serialization.Json.