Apakah Javascript dikompilasi atau bahasa yang ditafsirkan? [Tutup]

151

Bisakah Javascript disebut bahasa yang ditafsirkan murni? Atau apakah itu juga memiliki rasa dikompilasi untuk itu? Bisakah seseorang membimbing dengan alasan di balik kedua hal yang mana yang benar.

netemp
sumber
31
Harap pertimbangkan untuk menambahkan komentar saat memilih agar pertanyaannya dapat diperbaiki. Terima kasih.
netemp
2
@ Blindy: apakah Anda menyebutkan bahwa perbedaan antara dikompilasi dan diinterpretasikan tidak boleh ada sama sekali?
netemp
23
5 downvotes, dan bahkan tidak ada satu komentar yang mengutip mengapa downvote ada di sana. Agak mengecewakan.
netemp
1
Ini mungkin cara yang umum untuk mengklasifikasikan bahasa, tetapi itu tidak membuatnya lebih berguna.
1
@NetEmp (catatan saya belum diturunkan - tetapi telah memilih untuk bermigrasi ke programmer) Ini adalah tempat yang salah untuk menanyakan jenis pertanyaan ini - baca FAQ tentang pertanyaan apa yang ingin ditanyakan di sini - ini seharusnya berada di bagian pemrograman StackExchange
Manse

Jawaban:

72

Pergi dan baca jawaban untuk pertanyaan ini

/software/138521/is-javascript-interpreted-by-design

Jawaban yang saya terima sangat bagus dan seharusnya membantu menjawab pertanyaan Anda.

Bagi saya pribadi, saya agak berhati-hati dengan gagasan memanggil bahasa yang ditafsirkan atau dikompilasi. Ini adalah keputusan implementasi, bukan bagian dari spesifikasi bahasa. Jika Anda ingin berbicara tentang JavaScript yang dikompilasi atau ditafsirkan, tanyakan dalam konteks implementasi spesifikasi bahasa yang sebenarnya.

Matt Esch
sumber
19

JavaScript diinterpretasikan pada saat runtime oleh browser klien. Ada alat yang disebut Compiler Badak JavaScript yang seharusnya mengkompilasi JavaScript ke file kelas Java.

HellaMad
sumber
7
Bagaimana dengan V8 dan sejenisnya?
25
V8 tidak pernah memasukkan sesuatu seperti juru bahasa, dan sebagian besar mesin JS fitur utama kompiler JIT sekarang. Jadi, mengatakan bahwa "JavaScript ditafsirkan" jelas salah (atau mungkin definisi penerjemah / kompiler Anda).
@delnan: Terima kasih atas wawasan di V8. Dengan demikian, JS bukanlah bahasa yang ditafsirkan murni.
netemp
2
Penyusun JavaScript Badak. Anda tahu, jika Anda ingin bahasa yang ditafsirkan ditafsirkan oleh bahasa yang ditafsirkan berbeda.
Trevor Hickey
1
Seperti yang orang lain katakan, ini sudah tidak berlaku lagi untuk beberapa waktu sekarang. Ya, pada hari-hari awal Anda bisa mengatakan Javascript telah ditafsirkan, tetapi sudah sangat lama sejak itu.
John Weisz