Web BizarroWeb Bizarro

Suscríbete a nuestro Newsletter

X

Únete a nuestra lista de correos para recibir semanalmente actualizaciones de nuestro contenido.

Verificación de tipo en JavaScript con Flow

Verificación de tipo en JavaScript con Flow 17.AUG.15

Alvaro José Rios Ch
Fundador WebBizarro

La verificación de tipo es muy importante para crear código seguro y JavaScript es un lenguaje que no es estricto en cuanto a esto por lo que es responsabilidad del programador hacerlo y si no lo haces puede ocasionarte problemas a la hora de buscar un error en el código.

Flow es muy fácil de usar solo debes instalarlo y agregar un comentario en la primera línea del archivo que quieres verificar, esto es muy útil ya que si tienes un proyecto grande puedes ir validando los archivos uno por uno, veamos el siguiente ejemplo.

/* @flow */
function foo(x) {
    return x * 10;
}
foo('Hello, world!');

Como pueden ver hay un error de tipo ya que estas pasando un string y la función debería recibir un número por lo que el script fallará, en este caso si usamos flow para verificar el script veremos que tenemos un error.

$> flow

    hello.js:5:5,19: string   
    This type is incompatible with    
        hello.js:3:10,15: number

Adicionalmente puedes ir agregando la validación de tipo a tus archivos JavaScript para tener un código más seguro, Flow se encargará de llevarlo a código JavaScript que se pueda ejecutar en cualquier navegador.

/* @flow */
function foo(x: string, y: number): string {
    return x.length * y;
}
foo('Hello', 42);

Como pueden ver la función tiene un error ya que debería retornar un string y retorna un número.

$> flow
    hello.js:3:10,21: number
    This type is incompatible with
        hello.js:2:37,42: string

Una herramienta muy útil, esta disponible para Linux y Mac OSX y desde mi punto de vista es esencial para cualquier programador JavaScript, claro si no usas ya algún preprocesador que tenga esta función.