CodeGym /Cursos /Frontend SELF ES /Variables y tipos de datos en JavaScript

Variables y tipos de datos en JavaScript

Frontend SELF ES
Nivel 33 , Lección 1
Disponible

2.1 Variables en JavaScript

JavaScript es un lenguaje de programación flexible y dinámico que admite varias formas de declarar variables y trabajar con tipos de datos. En esta conferencia, vamos a ver tres formas clave de declarar variables (var, let, const) y los tipos de datos primitivos básicos en JavaScript.

Variables en JavaScript

JavaScript es un lenguaje con tipado dinámico. Las variables en él no tienen tipo. Se puede asignar cualquier valor a cualquier variable en cualquier momento (pero hay matices).

Para crear una variable, se debe escribir una construcción del tipo:

    
      var name;
    
  

Se puede asignar un valor a la variable de inmediato:

    
      var name = value;
    
  

Pero en realidad, en JavaScript hay 3 formas de crear variables. Vamos a hablar de ellas con más detalle.

Operador var

Las variables declaradas con var tienen un ámbito funcional o global. Están sujetas a "hoisting", lo que significa que su declaración se mueve a la parte superior de su ámbito al ejecutar el código.

Ejemplo:

JavaScript
    
      console.log(x); // undefined
      var x = 10;
      console.log(x); // 10
    
  

En este ejemplo, la variable x se eleva al comienzo de su ámbito, por lo que el primer console.log muestra undefined.

En otras palabras, el "hoisting" convierte nuestro código en esto:

JavaScript
    
      var x;
      console.log(x); // undefined
      x = 10;
      console.log(x); // 10
    
  

Operador let

Los desarrolladores querían cambiar el comportamiento del operador var, pero temían romper millones de líneas de código ya escritas. Por eso simplemente inventaron otro operador que también crea variables, pero con un comportamiento un poco diferente.

Las variables declaradas con let tienen un ámbito de bloque. Esto significa que solo están disponibles dentro del bloque de código (generalmente entre llaves {}) donde se declaran. let no está sujeto a hoisting como var.

Ejemplo:

La variable y solo existe dentro del bloque if.

JavaScript
    
      if (true) {
        let y = 20;
        console.log(y); // 20
      }

      console.log(y); // ReferenceError: y is not defined
    
  

Operador const

Las variables declaradas con const también tienen un ámbito de bloque y no pueden ser reasignadas después de su inicialización. Sin embargo, esto no significa que los objetos declarados a través de const sean inmutables: sus propiedades pueden cambiar.

Es decir, no se puede cambiar la variable, pero el objeto al que se refiere — sí. Querían lo mejor, pero salió como siempre.

Ejemplo:

En este ejemplo, la constante x no se puede reasignar, pero el objeto obj puede cambiar.

JavaScript
    
      const x = 30;
      console.log(x); // 30
      x = 40; // TypeError: Assignment to constant variable.

      const obj = { name: 'Alice' };
      obj.name = 'Bob'; // Esto es permitido
      console.log(obj.name); // Bob
    
  

2.2 Tipos de datos primitivos

JavaScript admite varios tipos de datos primitivos que representan valores simples, que no son objetos complejos.

Tipo Number

Representa cualquier valor numérico, incluidos enteros y números de punto flotante.

Ejemplos:

JavaScript
    
      let num = 42;
      let pi = 3.14;
    
  

Tipo String

Representa datos de texto: cadenas, caracteres, emojis. Todo lo que se parece a cadenas — va aquí.

Ejemplos:

JavaScript
    
      let greeting = "Hello, world!";
      let facepalm = "🤦";
      let char = 'x';
    
  

Tipo Boolean

Representa valores lógicos true o false.

JavaScript
    
      let isTrue = true;
      let isFalse = false;
    
  

Tipo Null

Representa la ausencia intencionada de un valor.

JavaScript
    
      let empty = null;
    
  

Si el tipo consiste en un solo valor que significa ausencia de valor, ¿quizás es más un valor único que un tipo único?

Tipo Undefined

Representa el valor de una variable que ha sido declarada, pero no inicializada.

JavaScript
    
      let notAssigned;
      console.log(notAssigned); // undefined
    
  

2.3 Comparación de var, let y const

Comparemos nuestros tres métodos de creación de variables una vez más:

Característica var let const
Ámbito Funcional o global De bloque De bloque
Hoisting Sí, pero la inicialización no es elevada No No
Reasignación No
Inicialización No obligatoria No obligatoria Obligatoria

JavaScript proporciona varias formas de declarar variables, cada una con sus propias características y aplicabilidad dependiendo del contexto. var se usa menos debido a sus características de hoisting y ámbito global. let y const son preferidos en JavaScript moderno debido a su ámbito de bloque y control sobre la reasignación.

Los tipos de datos primitivos permiten trabajar con las estructuras de datos básicas, proporcionando la funcionalidad básica necesaria para crear aplicaciones complejas. Y este es el lenguaje más popular del mundo :)

Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION