El modo estricto en JavaScript

JavaScript Modo estricto : En este tutorial, vamos a aprender sobre la modo estricto en JavaScript .

JavaScript estricto modo

Aquí, vamos a explorar lo que es el modo estricto en JavaScript?

Para practicar sin necesidad de instalar código JavaScript del compilador en su sistema: Abra la consola de Chrome dev para probar los ejemplos haciendo clic derecho en el navegador y rarr; seleccionar inspeccionar y rarr; la selección de consola o simplemente escriba f12 .

Empecemos con una simple operación,

const a = 20;
console.log(a == 20);

salida

true;

Sabemos que hay dos operadores de comparación en la mano nos class en JS. El for igual (==) a la y triples igual (===) y también sabemos la diferencia entre ellos. Sin embargo, no es una terminología común asociado con tanto que también marca como característica distintiva. El double igual a la operación se refiere a menudo como “comparación suelta” y la triple igual a como “estricta comparación” .

const a = 20;
console.log(a == '20');

salida

true;

Esperar lo que acaba de pasar? Se comparó un número en una cadena y tenemos un Truthy. La razón detrás de esto es la “comparación suelta” pasa en el fondo. JS evalúa la cadena y dice bien, esto dice 20 y estamos comparándolo con un número cuyo valor es también 20 y ya que ambos representan el mismo valor double nos dejó cierto . Si se utilizó un Triple igual (===) al operador o comparación estricta ,

const a = 20;
console.log(a === '20');

salida

false;

Ahora tenemos falsa debido a una comparación estricta entre los tipos .

Sobre la base de este concepto JavaScript tiene una construida en modo estricto que cuando se utiliza, estrictamente comprueba el código return cualquier tipo de errores. Algunas de la flexibilidad que normalmente se permite en el idioma Se bloquea en el modo estricto para que el usuario escribe puro, libre de errores de código limpio evitando así errores de que ocurren en el primer lugar. Echemos un vistazo a algunos ejemplos,

function print() {
for (i = 0; i < 3; i++) {
console.log(i);
}
}

salida

0
1
2

Sus carreras de código perfectamente bien que producen la salida correcta a pesar de que tenía un error. Variable i no estaba declarado en cualquier lugar y directamente inicializado y acostumbrado. JavaScript lee el código y entiende que debe haber olvidado declarar i lo que hace que for que durante la ejecución del código. Sin embargo, ejecutar el mismo código en el modo estricto .

function print() {
"Use strict";
for (i = 0; i < 3; i++) {
console.log(i);
}
}

salida

ReferenceError: i is not defined.

function person(name) {
this.name = name;
}
let fuzzy = person("Fuzzy");

Pueden adivinar lo que está mal con el código anterior? Hemos omitido la nueva palabra clave antes de persona ( “fuzzy”), mientras que declarar un objeto de tipo persona . Sin embargo, este código se ejecuta perfectamente bien sin producir ningún error.

Pero si corremos esto en modo estricto,

"use strict";
function person(name) {
this.name = name;
}
let fuzzy = person("Fuzzy");

salida

TypeError: Cannot set property of 'name' undefined.

modo estricto Deshabilita dando una función de varios parámetros con el mismo nombre y elimina ciertas características del lenguaje problemáticos.


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *