¿Qué hace la directiva usa estricta en JavaScript?

¿Qué hace la directiva usa estricta en JavaScript?

JavaScript evolucionó durante mucho tiempo sin tener problemas de compatibilidad y modificado agregando nuevas características pero no cambiando las características antiguas. Tenía sus ventajas y desventajas y la ventaja era que no permitía la ruptura del código existente, sin embargo, la desventaja era que cualquier error cometido por los desarrolladores o creadores estaba atrapado dentro de JavaScript para siempre.

Se llevó a cabo hasta que Ecmascript 5 (también denominado ES5) se introdujo en 2009 cuyo beneficio era que agregó nuevas características al modificar las actuales. Sin embargo, de forma predeterminada en JavaScript, estas modificaciones están apagadas. Uno necesita habilitarlo con un mensaje o comando especial que sea el "Usar estricto".

¿Qué es "usar estricto"?

La definición básica de "usar estricto" es que permite a JavaScript ejecutar código en modo estricto. El modo estricto es algo en lo que uno no puede usar variables no declaradas. El modo estricto también nos ayuda a evitar posibles errores/errores, si no hemos seguido correctamente la sintaxis de JavaScript. También nos ayuda cuando hacemos errores tipográficos, lo que resulta en una nueva variable no deseada. También podemos decir que el propósito básico del modo estricto es hacer que nuestro código se vea más limpio.

Universalmente apoyado?

Debe tenerse en cuenta que el uso estricto no es universalmente compatible con los navegadores. La mayoría de los navegadores modernos admiten "usar estricto" con la excepción de Internet Explorer 9 y las versiones por debajo de 9. Los siguientes navegadores con versiones anteriores o las versiones especificadas admiten "Usar estricto".

Mozilla Firefox Borde de Internet Google Chrome Ópera Safari
4.0 10.0 13.0 12.1 6.0

Sintaxis del modo estricto

Podemos implementar o declarar el uso estricto agregando en la parte superior de una función o codificar la palabra clave "usar estricto" de manera exacta. Si lo declaramos en la parte superior de nuestro código, tendrá un alcance global, lo que significa que todo nuestro código JavaScript se ejecutará en modo estricto.

Veamos dos ejemplos. En el primer ejemplo, usaremos una variable no declarada sin usar "usar estricto". En el segundo ejemplo, usaremos el modo estricto de la misma manera.

Ejemplo 1:

nombre = "Linux Sugerencia";
consola.log (nombre);

Salida: Sugerencia de Linux

Ejemplo 2:

"Use estricto";
nombre = "Linux Sugerencia";
// Esto causará un error que el nombre no esté definido

"el nombre no está definidoEl error se causará en el escenario anterior.

Echemos un vistazo a otro ejemplo en el que se usa el modo estricto dentro de la función. El alcance "use estricto" será funcional I-E limitado a la función.

Ejemplo 3:

función myFunc ()
"Use estricto";
y = 4;
// Esto causará un error
// El error será que Y no está definido

myFunc ();

En este ejemplo, la primera variable "nombre" no tendrá un error ya que no estamos utilizando el modo estricto. Sin embargo, en la función, se nos mostrará un error de "y" no se declara ya que estamos utilizando el modo "usar estricto". Permítanme enfatizar nuevamente que en este ejemplo el alcance del modo estricto está restringido a la función "myFunc ()".

Por qué usar el modo estricto?

Ahora que hemos analizado la sintaxis del modo estricto y algunos ejemplos, exploremos la pregunta de por qué utilizar el modo estricto?

La ventaja del uso de modo estricto es que hace que nuestro código sea más limpio como se mencionó anteriormente. Además, el modo estricto nos ayuda a escribir JavaScript seguro. A menudo ignoramos la mala sintaxis. Esto puede causarnos problemas más tarde. El modo estricto nos ayuda a convertir el código de sintaxis informal/malo en errores reales para que podamos manejarlos en consecuencia.

En el Ejemplo 1, vimos que no declaramos una variable, pero la consola JavaScript no arrojó ningún error. Trató la variable "nombre" como una variable global. En modo estricto, evitamos esto ya que el modo estricto arroja un error que el nombre no está definido. Esto nos ayuda a evitar declarar accidentalmente variables globales en nuestro código.

Restricciones en modo estricto

Discutamos lo que no está permitido o no está permitido en modo estricto. Podemos ver en el Ejemplo 1 que no podemos usar una variable en modo estricto si no está definido o declarado. Lo mismo ocurre con los objetos. Tenemos que declarar objetos en modo estricto, de lo contrario recibiremos un error.

Ejemplo 4:

"Use estricto";
lenguaje =
Primero: "Inglés",
Segundo: "Chino"
;
// Esto nos arrojará un error como objeto "lenguaje" no está definido

El modo estricto tampoco nos permite eliminar una variable o una función.

Ejemplo 5:

"Use estricto";
const pi = 3.143;
eliminar pi;
// Esto causará un error
función myFunc ()
//Hola Mundo

eliminar myfunc;
// Esto causará un error

Además de esto, el modo estricto nos restringe el uso de palabras clave reservadas en futuras versiones de JavaScript o actualmente usando. Por ejemplo, no podemos usar implementos, dejar, paquete, interfaz, rendimiento, estático, protegido, público, privado, argumentos, etc.

Palabra clave "esto" en modo estricto

La palabra clave "esto" se usa en JavaScript para referirse a un objeto al que pertenece. La palabra clave "esta" se comporta de manera diferente en el modo estricto. Supongamos que usa un objeto no declarado con el uso de "esto". JavaScript devolverá "indefinido" en modo estricto en lugar del objeto.

Ejemplo 6:

"Use estricto";
función myFunc ()
alerta (esto);
// Esto nos mostrará una alerta sobre indefinidos

// llamando a la función ahora
myFunc ();

Conclusión

El uso de palabras clave Strict ayuda a los desarrolladores de JavaScript a ejecutar su código JavaScript en modo estricto, por lo tanto, restringiendo el uso de variables no declaradas y ayuda a los desarrolladores evitando posibles errores o errores.

Estudiamos la directiva "Usar estricta" en esta publicación y discutimos cómo y por qué usar la directiva "Usar estricta" y discutida, el navegador que admite el modo estricto. Mantuvimos un control sobre los conceptos utilizando ejemplos. Al estudiar este artículo, sabemos cómo hacer que nuestro código sea más limpio y cómo evitar variables globales innecesarias con el uso de "usar estricto". Permítanme enfatizar el hecho nuevamente de que si está trabajando con "Usar estricto" siempre declara en la parte superior de un bloque de código o la parte superior de la función para que funcione.