JScript adalah implementasi yang dilakukan oleh Microsoft terhadap spesifikasi bahasa pemrograman skrip ECMAScript. Bahasa ini didukung oleh Microsoft Internet Explorer, Microsoft Internet Information Services (IIS) dan Microsoft Windows Scripting Host (WSH). Bahasa ini sangatlah mirip dengan bahasa JavaScript (implementasi Netscape/Mozilla terhadap spesifikasi European Computer Manufacturer Association/ECMA), dan ECMAScript. Pada kenyataannya, nama JavaScript kadang-kadang digunakan untuk merujuk kepada ECMAScript atau bahkan
JScript.
JScript diimplementasikan sebagai sebuah engine di dalam Windows Script. Hal ini berarti bahwa
JScript dapat digunakan oleh semua aplikasi apapun yang mendukung Windows Script, seperti Internet Explorer, Active Server Pages (ASP), dan Windows Scripting Host. Ini juga berarti bahwa setiap aplikasi yang mendukung Windows Script dapat mendukung beberapa bahasa secara sekaligus,
JScript, VBScript, Perl, dan lain-lain.
JScript pertama kali didukung di dalam Internet Explorer versi 3.0 yang dirilis pada bulan Agustus 1996. Seperti halnya mesin Active Scripting lainnya,
JScript dapat diperoleh dari Internet Explorer, Windows Scripting Host, dan Active Server Pages. Ekstensi berkas kode sumber
JScript adalah *.js.
Versi terbaru dari
JScript adalah
JScript .NET, yang dibuat berdasarkan edisi keempat dari standar ECMAScript, dan dapat dikompilasi dengan menggunakan platform Microsoft .NET Framework.
JScript .NET menambahkan beberapa fitur baru terhadap ECMAScript edisi ketiga, seperti halnya anotasi tipe statis opsional.
Versi
=
JScript yang asli adalah sebuah mesin Active Scripting. Seperti halnya bahasa Active Scripting lainnya,
JScript dibangun di atas platform COM/OLE Automation dan menyediakan kemampuan scripting bagi beberapa aplikasi yang berjalan di atasnya.
JScript ini merupakan versi yang digunakan ketika menampilkan halaman web di dalam Microsoft Internet Explorer, di dalam aplikasi HTML/Dynamic HTML, dalam Active Server Pages, Windows Scripting Host, dan beberapa lingkungan otomatisasi lainnya.
JScript versi ini kadang-kadang disebut juga sebagai "classic
JScript" atau "Active Scripting
JScript", untuk membedakannya dengan versi yang berbasis platform .NET.
JScript yang asli merupakan implementasi dari spesifikasi ECMA-262. Selain yang dimiliki oleh spesifikasi ECMA-262,
JScript juga mengimplementasikan beberapa hal tambahan yang baru.
JScript juga terdapat di dalam platform Windows CE (Windows Mobile telah memilikinya secara baku akan tetapi pada Windows Embedded CE memilikinya sebagai sebuah fitur opsional). Sayangnya, versi Windows CE ini memiliki kekurangan pada Active Debugging.
=
Managed
JScript adalah sebuah implementasi
JScript untuk platform Dynamic Language Runtime (DLR), yang merupakan bagian dari beberapa bahasa dinamis untuk .NET bersamaan dengan IronRuby, IronPython, dan Dynamic Visual Basic. Tidak seperti
JScript .NET yang kurang dinamis dibandingkan dengan
JScript yang asli (meski memiliki kompatibilitas terhadap Common Language Specification (CLS)), Managed
JScript didesain di atas DLR dan menyediakan fitur-fitur yang dibutuhkan untuk beberapa skenario skripting. Rencananya, Managed
JScript ini akan dijadikan sebuah bagian dari Microsoft Silverlight 1.1 dan versi selanjutnya dari ASP.NET.
=
JScript .NET merupakan implementasi
JScript dalam Microsoft .NET Framework. Bahasa ini mendukung Common Language Specification (CLS) dan secara otomatis membawa semua keunggulan yang ditawarkan oleh CLS, tetapi tidak memiliki beberapa fitur yang dimiliki oleh bahasa
JScript yang asli, sehingga membuatnya kurang cocok digunakan untuk beberapa skenario skripting.
JScript .NET dapat digunakan untuk halaman-halaman ASP.NET dan aplikasi .NET yang komplet, tetapi kekurangan dukungan pada Microsoft Visual Studio hanya menjadikannya sebagai jalur upgrade untuk ASP dengan menggunakan
JScript klasik ketimbang bahasa yang baru.
JScript .NET tidak didukung di dalam .NET Compact Framework.
Catatan: Versi-versi
JScript .NET tidak berhubungan sama sekali dengan versi-versi
JScript klasik.
JScript dan
JScript .NET merupakan dua produk yang benar-benar berbeda. Meskipun
JScript .NET juga tidak didukung oleh Integrated Development Environment (IDE) Microsoft Visual Studio, versinya memiliki korelasi dengan versi-versi bahasa .NET lainnya (C#, Visual Basic .NET, dan Visual C++) yang dibawa oleh versi Visual Studio tersebut.
Perbedaan dengan JavaScript
Selain pada perbedaan implementasi internal,
JScript menggunakan metode garbage collection mark-and-sweep secara non-generational, tetapi JavaScript menggunakan metode garbage collection mark-and-sweep secara generational.
Pranala luar
Dokumentasi
JScript klasik di dalam MSDN Library
Dokumentasi
JScript .NET di dalam MSDN Library
Blog mengenai
JScript
Spesifikasi ECMA-262