La Verdad sobre "use strict" en JavaScript


Algunas personas agregan "use strict"; en su código JavaScript, y algunos analizadores de código, como JSLint de Crockford, nos pueden lanzar un error del tipo:

Problem at line 1 character 1: Missing "use strict" statement.


Pero, ¿que es "use strict;", que implica, y que tan relevante es?


El modo estricto es una nueva característica de ECMAScript 5 (mas conocido como JavaScript) que permite a un programa, o función, operar en un contexto de operaciones "estricto". Esto previene ciertas acciones y lanza mas excepciones.

Esto nos ayuda en un varias formas:
  • Atrapa muchos errores comunes de programación, lanzando excepciones.
  • Previene, lanzando excepciones, que acciones relativamente inseguras sean llevadas a cabo, como obtener acceso al objeto global.
  • Deshabilita algunas características que son confusas o que no son recomendables.
  • Ejemplo: Si usas foo = "bar" sin definir foo primero, tu código va a fallar.
  • Puedes ver la compatibilidad de "use strict";

Puedes usar "use strict"; al principio de un archivo .js, pero también en funciones:

// código no estricto

(function(){
  "use strict";

  // código estricto
})();

// código no estricto 

Esto puede ser muy útil a la hora de mezclar código antiguo y nuevo.

Además, si escribes JavaScript dentro de html, puedes usar:

<script>
"use strict";
...
</script>

En definitiva, "use strict"; te ayuda a cometer menos errores al detectar muchas cosas que puedan llevar a futuros desastres.

Y tu, ¿Recomendarías el uso de "use strict";? Cuéntanos en los comentarios.

No hay comentarios:

Publicar un comentario