Bagaimana saya tahu versi Javascript yang saya gunakan?

Jawaban:

42

Wikipedia (atau lebih tepatnya, komunitas di Wikipedia) menyimpan daftar terbaru yang cukup bagus di sini .

  • Sebagian besar browser menggunakan versi 1.5 (meskipun mereka memiliki fitur versi yang lebih baru)
  • Mozilla berkembang dengan setiap rilis titik (mereka mempertahankan standar sehingga tidak mengherankan)
  • Firefox 4 menggunakan JavaScript 1.8.5
  • Jalan besar lain yang tidak biasa adalah IE9 - ia mengimplementasikan ECMAScript 5, tetapi tidak menerapkan semua fitur JavaScript 1.8.5 (belum yakin apa yang mereka sebut versi JScript ini, mesin dengan kode nama Chakra , belum ).
Nick Craver
sumber
3
Firefox 4 (JavaScript (TM) 1.8.5) dan IE9 (JScript 9) menerapkan banyak ECMAScript 5 fitur, tetapi pertimbangkan misalnya JavaScript (TM) 1,8 , adalah penuh dari non-standar fitur yang tidak tersedia pada IE9 (dan bukan bagian dari spesifikasi ES5.), ini adalah ekstensi Mozilla .
CMS
@CMS - titik yang sangat baik pada bit yang tidak diimplementasikan, coba perbaiki di atas mengingat ini telah menggelembung ke atas.
Nick Craver
2
Terima kasih, IMO adalah poin penting untuk menekankannya bahwa JScript! == JavaScript (TM) dan bahwa nomor versi JS Mozilla hampir tidak ada artinya bagi implementasi lain ...
CMS
1
Untuk apa nilainya, tampaknya "daftar terbaru yang cukup bagus" Wikipedia berhenti menjadi seperti itu sekitar waktu jawaban ini diberikan. Tampaknya tidak diperbarui sejak ~ 2010 ...
NetXpert
82

Klik tautan ini untuk melihat versi mana yang BROWSER Anda gunakan: http://jsfiddle.net/Ac6CT/

Anda harus dapat memfilter dengan menggunakan tag skrip untuk setiap versi JS.

<script type="text/javascript">
  var jsver = 1.0;
</script>
<script language="Javascript1.1">
  jsver = 1.1;
</script>
<script language="Javascript1.2">
  jsver = 1.2;
</script>
<script language="Javascript1.3">
  jsver = 1.3;
</script>
<script language="Javascript1.4">
  jsver = 1.4;
</script>
<script language="Javascript1.5">
  jsver = 1.5;
</script>
<script language="Javascript1.6">
  jsver = 1.6;
</script>
<script language="Javascript1.7">
  jsver = 1.7;
</script>
<script language="Javascript1.8">
  jsver = 1.8;
</script>
<script language="Javascript1.9">
  jsver = 1.9;
</script>

<script type="text/javascript">
  alert(jsver);
</script>

Laporan Chrome saya 1.7

Dicuri secara terang-terangan dari: http://javascript.about.com/library/bljver.htm

Alex Wayne
sumber
5
Bagaimana dengan rilis minor? misalnya 1.8.1, 1.8.2, 1.8.3 ... Anda melihat bagaimana ini akan membosankan.
Nick Craver
12
Anda akan lebih baik menggunakan deteksi fitur.
jwueller
2
1.8.1 misalnya menambahkan JSONdukungan asli , 1.8.5 hingga kepatuhan ECMAScript 5 ... ini adalah tonggak penting :)
Nick Craver
3
Jadi ini memberi tahu saya bahwa Chrome adalah 1.7, namun memiliki dukungan JSON asli. Mungkin jawaban yang tepat untuk pertanyaan ini lebih karena versi javascript di browser tidak selalu menunjukkan informasi yang sangat berguna.
Alex Wayne
1
Mozilla mendukung javascript hingga versi 1.8 tetapi sintaksnya berbeda:<script type="application/javascript;version=1.7"/>
Yukulélé
17

Di chrome Anda dapat dengan mudah menemukan tidak hanya versi JS Anda tetapi juga versi flash. Yang Anda butuhkan hanyalah mengetikkan chrome://version/baris perintah dan Anda akan mendapatkan sesuatu seperti ini:

masukkan deskripsi gambar di sini

Salvador Dali
sumber
9
ha ha! Itu bukan versi JS tetapi nomor versi untuk V8 Engine. Juga, hari ini, pada tahun 2015 mereka telah pindah ke Blink sebagai mesin pilihan mereka
Christian M.Raymonds
@ ChristianM.Raymonds lalu mengapa chrome v saya 46.0.2490.86pada November 2015 masih muncul V8 4.6.85.31?
Salvador Dali
@Savador Dali OP bertanya tentang versi JS - baca Versi Bahasa JavaScript yang dipahami oleh mesin dan bukan versi mesin. Apa pun yang lebih besar dari Chrome 28 menggunakan Blink. Silakan lakukan riset Anda.
Christian M.Raymonds
1
@ SalvadorDali- Itu adalah versi mesin V8 (mesin Javascript) dan BUKAN versi Javascript.
nanosoft
4
@ ChristianM.Raymonds - Blink dan V8 adalah dua hal yang sangat berbeda. V8 adalah mesin JS dan Blink adalah mesin web dan Chrome menggunakan keduanya. Mereka adalah dua Mesin yang terpisah untuk dua hal yang sangat berbeda dan penggunaan yang satu tidak saling eksklusif dengan cara apa pun.
nanosoft
6

Daripada menemukan versi mana yang Anda gunakan, Anda dapat mengubah pertanyaan Anda menjadi "versi skrip ECMA mana yang sesuai dengan mesin JavaScript / JSscript browser saya".

Untuk IE:

alert(@_jscript_version);      //IE

Lihat jawaban Squeegy untuk versi non-IE :)

Robin Maben
sumber
3
Apakah Squeegy mengubah nama pengguna atau menghapus jawabannya? Tidak ada jawaban di sini dari pengguna bernama Squeegy.
Peter Hansen
@PeterHansen: Ups, seharusnya ditautkan ke jawabannya :)
Robin Maben
dan browser melakukannya hanya sebagian, Anda mungkin menemukan 97% ES6, 39% ES7, kangax.github.io/compat-table/es6 , dan bahkan tabel ini tidak sepenuhnya benar.
prosti
Ini hanya bekerja jika Conditional Compilationdihidupkan, jadi mungkin tidak berfungsi 100% jika Anda memiliki SysAdmin yang percaya pada keamanan "remah roti"
GoldBishop
1

Semua browser saat ini menggunakan setidaknya versi 1.5:
http://en.wikipedia.org/wiki/ECMAScript#Dialect

Mengenai situs tutorial Anda, informasi di sana tampaknya sangat ketinggalan jaman , saya mohon Anda untuk pergi ke MDC dan membaca Panduan mereka:
https://developer.mozilla.org/en/JavaScript/Guide

Anda mungkin masih ingin berhati-hati terhadap fitur-fitur yang memerlukan versi 1.6atau lebih tinggi, karena ini mungkin memberikan beberapa masalah pada Internet Explorer.

Ivo Wetzel
sumber
"Browser Anda sudah usang. Perbarui ke browser baru." ... Cantumkan browser di sini ...
1,21 gigawatt
0

JavaScript 1.2 diperkenalkan dengan Netscape Navigator 4 pada tahun 1997. Nomor versi itu hanya memiliki arti penting untuk browser Netscape. Misalnya, implementasi Microsoft (seperti yang digunakan di Internet Explorer) disebut JScript, dan memiliki penomoran versinya sendiri yang tidak ada hubungannya dengan penomoran Netscape.

NickFitz
sumber