Esta publicación discutirá diferentes tipos de Espacios de nombres en JavaScript. Entonces, comencemos!
Espacio de nombres de JavaScript
El concepto de agregar clases, métodos, variables y objetos dentro de un contenedor se conoce como "Espacio de nombres"En JavaScript. El código que escribe en un programa JavaScript y los métodos predefinidos se almacenan en el "ventana"Variable, considerada una"Espacio de nombres global". Este espacio de nombres de la ventana se utiliza cada vez que se crea una nueva variable. Además, almacenar cualquier valor en la variable recién creada utilizará su espacio de nombres. Así es como funciona la jerarquía en JavaScript.
Tipos de espacios de nombres en JavaScript
JavaScript admite dos tipos de espacios de nombres:
Discutiremos los dos tipos de espacios de nombres mencionados en detalle.
Espacio de nombres estático en JavaScript
Cuando un "Etiqueta de espacio de nombres"Está codificado y se define una función dentro de él, se conoce como"Espacio de nombres estático". Permite la reasignación de los espacios de nombres; Sin embargo, un espacio de nombres estático siempre se referirá a los mismos objetos JavaScript antiguos.
Los espacios de nombres estáticos en JavaScript se dividen en las categorías a continuación:
Ahora, comprendamos la funcionalidad de cada uno de los tipos dados de espacio de nombres estáticos.
Espacio de nombres estático con asignación directa
En "Tarea directa", Las funciones se definen utilizando el espacio de nombres estático ya creado. Por ejemplo, en el siguiente ejemplo, crearemos un objeto llamado "alumno,"Que actúa como un espacio de nombres estático:
Var Student =Después de hacerlo, definiremos dos funciones "getName ()" y "getage ()"Y asociarlos con el"alumno"Espacio de nombres:
alumno.getName = function ()A medida que las funciones se asignan directamente al "alumno"Espacio de nombres, dará como resultado la siguiente salida:
Espacio de nombres estático con notación literal de objetos
En este tipo de espacio de nombres estático, se agregan funciones dentro del espacio de nombres en declaración de objeto.
En el programa a continuación, hemos utilizado el notación literal de objetos para definir un espacio de nombres estático "alumno"Y agregue el"getName ()" y "getage ()"Función dentro de su alcance:
estudiante var =Producción
Espacio de nombres estático con patrón de módulo
El javascript "patrón de módulo"Utiliza un envoltura de funciones eso devoluciones un objeto. El objeto devuelto se refiere a la lógica de la interfaz pública del módulo dentro del alcance global.
Este tipo de espacio de nombres estático invoca la función, guarda el valor devuelto a la variable del espacio de nombres y bloquea la API del módulo dentro del alcance del espacio de nombres. Las variables no incluidas en el valor de retorno se mantienen privadas y solo accesibles para la función que se refiere a ellas.
Ejemplo
Ahora definiremos "alumno" como un espacio de nombres estático y envuélvalo en una función:
El valor devuelto por el "getName ()" y "getage ()Los métodos se guardarán en la variable de espacio de nombres estático creado:
Espacio de nombres dinámico en JavaScript
En lugar de codificar una etiqueta de espacio de nombres, una "Espacio de nombres dinámico" es referenciado dentro de envoltura de funciones. Este tipo de espacio de nombres elimina el requisito de combinar el valor de retorno para asignar estos valores al espacio de nombres definido. Se utiliza principalmente en situaciones en las que se crean múltiples instancias independientes de un módulo en diferentes casos.
El espacio de nombres dinámico se puede implementar en JavaScript pasando el espacio de nombres como un "argumento"O definirlo con el"aplicarPalabra clave.
Entendamos ambos procedimientos uno por uno.
Pasando el espacio de nombres dinámico como argumento
JavaScript le permite crear un espacio de nombres dinámico pasándolo como un argumento hacia función de autoinvocadura. Estas funciones se definen con la ayuda del argumento aprobado.
Por ejemplo, crearemos un "alumno"Espacio de nombres y pasarlo como argumento"std". Después de eso, definiremos el "getName ()" y "getage ()"Funciones utilizando el"std" argumento:
Var Student = ; (function (std)La ejecución del programa anterior mostrará el siguiente resultado:
Crear espacio de nombres dinámico con la palabra clave Aplicar
Otro método para crear un espacio de nombres dinámico es usar el "aplicar" palabra clave y pasarlo como argumento. Después de hacerlo, agregue las funciones requeridas con el "estePalabra clave.
Ejemplo
Var Student = ; (function ()Producción
Esa fue toda información esencial sobre el tipos de Espacios de nombres en Javascript. Puede investigar más según sea necesario.
Conclusión
El Espacio de nombres estático tipo códigos duros el etiqueta de espacio de nombres y define funciones dentro y el Espacio de nombres dinámico tipo es referenciado dentro de envoltura de funciones. En JavaScript, el espacio de nombres estático se crea con asignación directa, notación de objetos y patrón de módulo. Por el contrario, un espacio de nombres dinámico se define pasando como un argumento o utilizando la palabra clave Aplicar. Esta publicación discutió los tipos de espacios de nombres en JavaScript.