Apa perbedaan antara JavaScript dan JScript?


117

Saya selalu bertanya-tanya APA THE HECK?!? adalah perbedaan antara JScript dan JavaScript.


Saya yakin itu sudah ditunjukkan, tetapi IE, Anda tidak dapat menggunakan constkata kunci untuk mendeklarasikan variabel: const MY_CONSTANT = 10;
dplante

Jawaban:


83

Hanya nama yang berbeda untuk apa yang sebenarnya ECMAScript. John Resig punya penjelasan yang bagus .

Berikut rincian versi lengkapnya:

  • IE 6-7 mendukung JScript 5 (yang setara dengan ECMAScript 3, JavaScript 1.5)
  • IE 8 mendukung JScript 6 (yang setara dengan ECMAScript 3, JavaScript 1.5 - lebih banyak perbaikan bug melalui JScript 5)
  • Firefox 1.0 mendukung JavaScript 1.5 (setara dengan ECMAScript 3)
  • Firefox 1.5 mendukung JavaScript 1.6 (1.5 + Array Extras + E4X + misc.)
  • Firefox 2.0 mendukung JavaScript 1.7 (1.6 + Generator + Iterator + let + misc.)
  • Firefox 3.0 mendukung JavaScript 1.8 (1.7 + Ekspresi Generator + Penutupan Ekspresi + lain-lain)
  • Versi Firefox berikutnya akan mendukung JavaScript 1.9 (1.8 + Akan ditentukan)
  • Opera mendukung bahasa yang setara dengan ECMAScript 3 + Getters and Setter + misc.
  • Safari mendukung bahasa yang setara dengan ECMAScript 3 + Getters and Setter + misc.

15
Ini salah. JScript mendukung beberapa fitur sintaks yang tidak ada di JavaScript, termasuk f(x) = y. Lihat pertanyaan ini untuk lebih lanjut.
Asad Saeeduddin

4
@ Malachi saya tidak perlu. Jawaban Patrick benar.
Asad Saeeduddin

38

Sejauh yang saya tahu, ada dua hal:

  1. Konstruktor ActiveXObject
  2. Idiom f (x) = y, yang secara kasar setara dengan f [x] = y.

5
The f(x) = yidiom mengganggu saya yang paling! Mengapa, oh mengapa mereka tidak pergi saja dengan f[x] = y...
Ates Goral

2
MS perlu menambahkan cap mereka di era ini. Begitulah cara Anda mengetahui kebaikannya.
cchamberlain

21

Dari Wikipedia: http://en.wikipedia.org/wiki/Jscript

JScript adalah dialek Microsoft dari spesifikasi bahasa skrip ECMAScript.

JavaScript (implementasi Netscape / Mozilla dari spesifikasi ECMA), JScript, dan ECMAScript adalah bahasa yang sangat mirip. Sebenarnya nama "JavaScript" sering digunakan untuk merujuk ke ECMAScript atau JScript.

Microsoft menggunakan nama JScript untuk implementasinya untuk menghindari masalah merek dagang ( JavaScript adalah merek dagang dari Oracle Corporation ).


7
Ini sama sekali tidak menjawab pertanyaan itu. Pertanyaannya adalah: "Apa perbedaan antara JavaScript dan JScript". The jawaban yang benar terkubur di bawah beberapa penegasan ini dari hal yang sama.
Asad Saeeduddin

7

JScript adalah implementasi Microsoft dari spesifikasi ECMAScript. JavaScript adalah implementasi dari spesifikasi Mozilla.


7

Javascript, bahasanya, datang pertama, dari Netscape.

Microsoft merekayasa balik Javascript dan menyebutnya JScript untuk menghindari masalah merek dagang dengan Sun. (Netscape dan Sun bermitra pada saat itu, jadi ini bukan masalah)

Bahasanya identik, keduanya adalah dialek skrip ECMA, standar setelah fakta.

Meskipun bahasanya identik, karena JScript berjalan di Internet Explorer, ia memiliki akses ke objek berbeda yang diekspos oleh browser (seperti ActiveXObject)


10
Tidak ada bahasa yang benar-benar identik, seperti yang diuraikan di pos lain.
EFraim


4

Menurut artikel ini :

  • JavaScript adalah bahasa skrip yang dikembangkan oleh Netscape Communications yang dirancang untuk mengembangkan aplikasi Internet klien dan server. Netscape Navigator dirancang untuk menafsirkan JavaScript yang disematkan ke dalam halaman Web. JavaScript tidak bergantung pada bahasa Java Sun Microsystem.

  • Microsoft JScript adalah implementasi terbuka dari JavaScript Netscape. JScript adalah bahasa skrip berkinerja tinggi yang dirancang untuk membuat konten online aktif untuk World Wide Web. JScript memungkinkan pengembang untuk menghubungkan dan mengotomatiskan berbagai macam objek di halaman Web, termasuk kontrol ActiveX dan program Java. Microsoft Internet Explorer dirancang untuk menafsirkan JScript yang disematkan ke dalam halaman Web.


2
@phrj: ini adalah definisi Humpty Dumpty dari "Open". AFAIK, artinya "ortogonal".
Shog9

7
Menyebut JScript sebagai "performa tinggi" di era pra-V8 membuat orang menyadari seberapa jauh kemajuan kita.
Ray Toal

6
Item daftar kedua terlihat seperti materi iklan - "implementasi terbuka" sebenarnya berarti "Anda harus berpikiran terbuka untuk menerimanya", dan "performa tinggi" berarti "dimaksudkan untuk dijalankan pada mesin berperforma tinggi".
Camilo Martin

4

Dahulu kala, semua penyedia browser membuat mesin JavaScript untuk browser mereka dan hanya mereka dan Tuhan yang tahu apa yang terjadi di dalamnya. Suatu hari yang indah, ECMA internasional datang dan berkata: mari kita membuat mesin berdasarkan standar umum, mari kita buat sesuatu yang umum untuk membuat hidup lebih mudah dan menyenangkan, dan mereka membuat standar itu. Karena semua penyedia browser membuat mesin JavaScript mereka berdasarkan inti ECMAScript (standar).

Misalnya, Google Chrome menggunakan mesin V8 dan ini open source. Anda dapat mendownloadnya dan melihat bagaimana program C ++ menerjemahkan perintah 'print' JavaScript ke kode mesin.

Internet Explorer menggunakan mesin JScript (Chakra) untuk browser mereka dan yang lain melakukannya dan mereka semua menggunakan inti yang sama.


2

Wikipedia memiliki ini untuk mengatakan tentang perbedaan.

Secara umum JScript adalah bahasa skrip ActiveX yang mungkin diinterpretasikan sebagai JavaScript oleh browser non-IE.


1

Ada beberapa perbedaan kode yang harus diperhatikan.

Parameter pertama negatif ke subtr tidak didukung, misalnya di Javascript: "string".substr(-1)mengembalikan "g", sedangkan di JScript: "string".substr(-1)mengembalikan "string"

Ini mungkin dilakukan "string"[0]untuk mendapatkan "s" di Javascript, tetapi JScript tidak mendukung konstruksi seperti itu. (Sebenarnya, hanya browser modern yang tampaknya mendukung "string"[0]konstruksi tersebut.


-5

Jscript adalah bahasa .NET yang mirip dengan C #, dengan kemampuan dan akses yang sama ke semua fungsi .NET.

JavaScript dijalankan di server ASP Classic. Gunakan ASP Klasik untuk menjalankan JavaScript yang sama dengan yang Anda miliki di Klien (tidak termasuk kemampuan HTML5). Saya hanya memiliki satu set kode dengan cara ini untuk sebagian besar kode saya.

Saya menjalankan .ASPX JScript saat saya memerlukan fungsi Image dan File Biner, (di antara banyak lainnya) yang tidak ada dalam ASP Klasik. Kode ini unik untuk server, tetapi sangat kuat.


7
Saya pikir Anda berpikir tentang JScript.Net
Lankymart

-7

JScript adalah Microsoft 's setara dengan JavaScript .
Java adalah produk Oracle dan dulunya adalah produk Sun.

Oracle membeli Sun .

JavaScript + Microsoft = JScript


14
Bersikaplah mudah dalam hal berani!
Jowen

Mengapa Java? Maksud Anda JavaScript.
Stack0verflow

Catatan penting bagi siapa pun yang mungkin tidak tahu: JavaScript dan Java bukanlah hal yang sama atau terkait dengan cara apa pun. JavaScript awalnya disebut LiveScript. Namun diganti namanya menjadi JavaScript untuk memanfaatkan popularitas Java. Berbagi nama adalah sejauh mana kesamaan mereka selain dari kesamaan dengan bahasa sintaks C seperti.
Bacon Brad
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.