Asynchronous
JavaScript and XMLHTTP, atau disingkat AJaX, adalah suatu teknik pemrograman
berbasis web untuk menciptakan aplikasi web interaktif.
Tujuannya adalah untuk
memindahkan sebagian besar interaksi pada komputer web surfer, melakukan
pertukaran data dengan server di belakang layar, sehingga halaman web tidak
harus dibaca ulang secara keseluruhan setiap kali seorang pengguna melakukan perubahan.
Hal ini akan meningkatkan interaktivitas, kecepatan, dan usability. Ajax
merupakan kombinasi dari:
DOM yang
diakses dengan client side scripting language, seperti VBScript dan
implementasi ECMAScript seperti JavaScript dan JScript, untuk menampilkan
secara dinamis dan berinteraksi dengan informasi yang ditampilkan
Objek XMLHTTP
dari Microsoft atau XMLHttpRequest yang lebih umum di implementasikan pada
beberapa browser. Objek ini berguna sebagai kendaraan pertukaran data
asinkronus dengan web server. Pada beberapa framework AJAX, element HTML IFrame
lebih dipilih daripada XMLHTTP atau XMLHttpRequest untuk melakukan pertukaran
data dengan web server.
XML umumnya
digunakan sebagai dokumen transfer, walaupun format lain juga memungkinkan,
seperti HTML, plain text. XML dianjurkan dalam pemakaian teknik AJaX karena
kemudahan akses penanganannya dengan memakai DOM
JSON dapat
menjadi pilihan alternatif sebagai dokumen transfer, mengingat JSON adalah
JavaScript itu sendiri sehingga penanganannya lebih mudah
Seperti halnya
DHTML, LAMP, atau SPA, Ajax bukanlah teknologi spesifik, melainkan merupakan
gabungan dari teknologi yang dipakai bersamaan. Bahkan, teknologi
turunan/komposit yang berdasarkan Ajax, seperti AFLAX sudah mulai bermunculan.
AJAX adalah
gabungan dari teknologi yang sudah ada, jadi ajax bukanlah teknologi baru,
hanya sebuah teknik akal bulus, tapi banyak orang yang salah menyebut AJAX
dengan sebutan teknologi, bahkan buku yang saya beli juga mengatakan demikian.