¿Se compila Javascript o se interpreta un lenguaje? [cerrado]

151

¿Se puede llamar Javascript a un lenguaje interpretado puro? ¿O también tiene un sabor compilado? ¿Alguien podría guiar las razones detrás de ambas cosas, lo que sea cierto?

Netemp
fuente
31
Considere agregar un comentario cuando vote hacia abajo para que la pregunta pueda mejorarse. Gracias.
Netemp
2
@Blindy: ¿mencionas que la distinción entre compilado e interpretado no debería estar ahí?
Netemp
23
5 votos negativos, y ni siquiera un solo comentario citando por qué el voto negativo estaba allí. Un poco decepcionante.
Netemp
1
Puede ser una forma común de clasificar idiomas, pero eso no lo hace más útil.
1
@NetEmp (nota que no he votado negativamente, pero he votado para migrar a los programadores) Este es el lugar equivocado para hacer este tipo de preguntas, lea las preguntas frecuentes sobre qué preguntas hacer aquí, esto debería estar en la sección de programación de StackExchange
Manse

Respuestas:

72

Ve y lee las respuestas a esta pregunta

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

La respuesta que acepté es excelente y debería ayudar a responder su pregunta.

Para mí personalmente, soy un tanto cauteloso con la idea de llamar a un idioma interpretado o compilado. Es una decisión de implementación, no parte de la especificación del lenguaje. Si desea hablar sobre JavaScript compilado o interpretado, pregúntelo en el contexto de una implementación real de la especificación del lenguaje.

Matt Esch
fuente
19

JavaScript es interpretado en tiempo de ejecución por el navegador del cliente. Sin embargo, hay una herramienta llamada Rhino JavaScript Compiler que supuestamente compila JavaScript en archivos de clase Java.

HellaMad
fuente
77
¿Qué pasa con V8 y similares?
25
V8 nunca incluyó nada como un intérprete, y la mayoría de los principales motores JS cuentan con compiladores JIT por ahora. Por lo tanto, decir que "JavaScript se interpreta" es obviamente incorrecto (o tal vez su definición de intérprete / compilador lo es).
@delnan: Gracias por la información en V8. Por lo tanto, JS no es un lenguaje puramente interpretado.
Netemp
2
Compilador de JavaScript de Rhino. Ya sabes, si quieres que tu idioma interpretado sea interpretado por un idioma interpretado diferente.
Trevor Hickey
1
Como han dicho otros, esto ya no es cierto desde hace algún tiempo. Sí, en los primeros días se podría decir que se interpretó Javascript, pero ha avanzado mucho desde entonces.
John Weisz el