DEV Community

Angel Taborda
Angel Taborda

Posted on

JavaScript Tips & Tricks #1 (undefined)

undefined

En JavaScript existen 7 tipos built-in, a saber:

  • null

  • undefined

  • boolean

  • number

  • string

  • object

  • symbol

Ahora mismo nos centraremos en undefined.

Comencemos por comentar una mala idea xD... Desafortunadamente, a diferencia del tipo null por ejemplo, undefined resulta ser un identificador. ¿Qué quiere decir esto?, pues que podemos hacer locuras como esta:

function foo() {
    var undefined = 2;
    console.log(undefined); // 2
}

foo();
Enter fullscreen mode Exit fullscreen mode

Esto no podríamos hacerlo por ejemplo con null, ya que es una palabra reservada y no puede ser tratada como una variable.

Operador void

Mientras que undefined es un identificador built-in que contiene el valor undefined por defecto, otra manera de obtener este valor es con el operador void.

La expresión void __ , "vacía" cualquier valor, de manera que el resultado de la expresión es siempre el valor undefined. Esta expresión no modifica el valor existente solo asegura que ningún valor sea retornado de la expresión.

var a = 42;

console.log( void a, a ); // undefined 42
Enter fullscreen mode Exit fullscreen mode

Por convención, la manera más común de representar el valor undefined es usando la expresión void 0. Cabe destacar que no hay diferencia práctica entre void 0, void 1 o undefined.

Resumen

  1. undefined es un identificador que contiene el valor undefined.

  2. El operador void es otra manera de obtener el valor undefined y la manera más usada de obtenerlo es usando la expresión void 0.

Fuentes

You Don't Know JS: Types & Grammar escrito por Kyle Simpson

Top comments (0)