Javascript รวบรวมหรือแปลภาษาหรือไม่ [ปิด]


151

Javascript สามารถเรียกได้ว่าเป็นภาษาที่มีการตีความอย่างแท้จริงหรือไม่? หรือมันยังมีรสชาติที่รวบรวมไว้บ้างไหม? มีคนแนะนำเหตุผลที่อยู่เบื้องหลังทั้งสองสิ่งต่าง ๆ ไม่ว่าจะเป็นเรื่องจริงหรือไม่


31
โปรดพิจารณาการเพิ่มความคิดเห็นเมื่อลงคะแนนเพื่อให้สามารถปรับปรุงคำถามได้ ขอบคุณ
netemp

2
@Blindy: คุณกำลังพูดถึงความแตกต่างระหว่างการรวบรวมและการตีความที่ไม่ควรจะมีทั้งหมดหรือไม่
netemp

23
5 downvote และไม่ใช่แม้แต่ความคิดเห็นเดียวที่อ้างว่าทำไม downvote อยู่ที่นั่น น่าผิดหวังเล็กน้อย
netemp

1
มันอาจเป็นวิธีทั่วไปในการจำแนกภาษา แต่ก็ไม่ได้ทำให้มีประโยชน์มากขึ้น

1
@ NetEmp (หมายเหตุฉันไม่ได้ลงคะแนน - แต่โหวตให้โยกย้ายไปยังโปรแกรมเมอร์) นี่เป็นสถานที่ที่ผิดที่จะถามคำถามประเภทนี้ - อ่านคำถามที่พบบ่อยเกี่ยวกับคำถามที่จะถามที่นี่ - ควรอยู่ในส่วนการเขียนโปรแกรมของ StackExchange
Manse

คำตอบ:


72

ไปและอ่านคำตอบของคำถามนี้

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

คำตอบที่ฉันยอมรับนั้นยอดเยี่ยมและควรช่วยตอบคำถามของคุณ

สำหรับฉันเป็นการส่วนตัวฉันค่อนข้างระมัดระวังในความคิดที่จะเรียกภาษาที่แปลหรือเรียบเรียง เป็นการตัดสินใจใช้งานไม่ใช่ส่วนหนึ่งของข้อกำหนดภาษา หากคุณต้องการพูดคุยเกี่ยวกับ JavaScript ที่รวบรวมหรือตีความให้ถามในบริบทของการใช้งานจริงของข้อกำหนดภาษา


19

เบราว์เซอร์ไคลเอนต์ถูกตีความ JavaScript ในขณะรันไทม์ มีเครื่องมือที่เรียกว่าRhino JavaScript Compilerที่ควรจะรวบรวม JavaScript เป็นไฟล์คลาส Java ได้


7
แล้ว V8 ล่ะก็ล่ะ?

25
V8 ไม่เคยรวมอะไรเช่นล่ามและเอ็นจิ้น JS ที่สำคัญส่วนใหญ่มีคอมไพเลอร์ JIT ในตอนนี้ ดังนั้นการพูดว่า "JavaScript ถูกตีความ" เห็นได้ชัดว่าผิด (หรืออาจเป็นคำจำกัดความของผู้แปล / ผู้แปล)

@delnan: ขอบคุณสำหรับความเข้าใจที่ V8 ดังนั้น JS ไม่ใช่ภาษาที่แปลอย่างหมดจด
netemp

2
คอมไพเลอร์แรด JavaScript คุณรู้ว่าถ้าคุณต้องการให้ตีความภาษาของคุณตีความด้วยภาษาที่ตีความแตกต่างกัน
เทรเวอร์ Hickey

1
อย่างที่คนอื่น ๆ พูดกันมานี่ไม่ได้เป็นเรื่องจริงอีกต่อไปในขณะนี้ ใช่ในช่วงแรกคุณอาจพูดได้ว่า Javascript นั้นถูกตีความ แต่มันก็มาไกลมากตั้งแต่นั้นมา
John Weisz
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.