5

Mientras aprendo JavaScript he estado buscando en la web y he visto numerosas referencias a construcciones en Javascript, pero parece que no puedo encontrar una definición completa de lo que son y lo que no son, especialmente en el contexto de Javascript.¿Qué es exactamente una construcción en JavaScript?

Por ejemplo, en 'Preguntas similares' Veo enlaces que conducen a un ejemplo con el siguiente código:

En What is this construct in javascript?:

(function() { 

})(); 

Por lo que entiendo esto es una construcción, pero lo ¿están definidos por?

+1

@dbaseman, lea la pregunta con más cuidado – smartcaveman

+0

@smartcaveman gracias, tienes razón. – McGarnagle

+0

@ u1sonderzug, ¿hay algo de lo que todavía estés confundido aquí? – smartcaveman

Respuesta

10

Construct es un término genérico que hace referencia a un agregado arbitrario de código en una formación específica. No es un término específico de JavaScript.

Básicamente, se puede aplicar a cualquier cosa. Entonces, aunque el código al que se hace referencia es un constructo conocido como función anónima de invocación automática, var x = "hello world"; es una construcción conocida como asignación y declaración de variables.

+0

En JavaScript, podría decirse que cualquier cosa que termine en a; es una construcción? Hasta el; ? – fakeguybrushthreepwood

+0

Cualquier cosa es una construcción. Una palabra clave es una construcción. Un valor literal es una construcción. El punto y coma no es necesario. Estás pensando demasiado esto. – smartcaveman

+0

Pero si var x = "hello world"; es una construcción, basada en lo que dijiste que 'Cualquier cosa es una construcción' ¿significa que 'x' o simplemente 'mundo' es una construcción? ¿No se refiere a una línea de código de alguna manera? Sé que esto probablemente suene ridículo, pero realmente no estoy 100% claro aquí. – fakeguybrushthreepwood

3

A "language construct" es el término completo que está buscando. De acuerdo con la definición vinculada:

Una construcción de lenguaje es una parte sintácticamente admisible de un programa que puede formarse a partir de una o más señales léxicas de acuerdo con las reglas de un lenguaje de programación.

Es un segmento válido de código escrito que sigue las reglas del idioma. Es una generalización de palabras como "expresión", "enunciado", "lista de argumentos de función", "enunciado de asignación", "palabra clave", "definición de función", etc., que definen una serie de tokens a buscar y lo que harán significa en las reglas del lenguaje. El código de un programa completo es construido con ellos.

+0

"Es una generalización de palabras como ..." es por eso que este es el ganador para mí. Deja en claro que "construir" es un meta concepto, no un patrón de codificación. – Tom

0

de la referencia de secuencias de comandos en MASTERING HTML4 por Deborah y Eric Ray:

construcciones son las estructuras que se pueden utilizar en un JavaScript para controlar el flujo de la secuencia de comandos

Siguen como para ordenar alfabéticamente TODOS los controles, que incluyen Descanso, Comentario, Si, Si más ... Entonces, constructo es una definición de término muy específica en JavaScript utilizada para nombrar y abarcar todas las declaraciones (estructuras) que controlan el flujo de un guión.