Javascript

Declaración de variables usando var, let, const y tipos de datos

Acá escribo un poco sobre las variables usando var, let, const y los tipos de datos que pueden ser asignados a esas variables.

Los tipos de datos son básicamente variables o constantes.

  • Las variables pueden ser cambiadas
  • Las constantes siguen siendo las mismas.

Hablemos sobre var

Las variables en JavaScript son contenedores que contienen datos reutilizables. Es comun inicializar variables de esta forma:

var algo;

Los valores o tipos de datos que podemos asignar a una variable son:

  • String
  • Number
  • Boolean
  • Null
  • Undefined
  • Array / Object

Ejemplo:


var nombre = 'Angel';       // String
var edad = 40;              // Number
var hijos = true | false;   // Boolean
var telefono = null;        // Null
var negro;                  // Undefined

var arreglo = ['a','b','c',]; // Array
var objeto = {
    nombre: 'Angel',
    edad:   40,
};   

Como declarar una variable:

  • Los nombres deben comenzar con una cadena en minúscula.
  • Los nombres no pueden contener símbolos o comenzar con símbolos.
  • Los nombres no pueden comenzar con un número.
  • Los nombres pueden contener una combinación de cadenas en mayúsculas, cadenas en minúsculas y números.

Namecheap.com


var name = 'Angel';
console.log(name); // Angel
var name = 'Chris';
console.log(name); // Chris
    

El scope de var

Es importante tener en cuenta el alcance (scope) de una variable declarada con var.

Ejemplo, si tenemos declarada la siguiente variable:


var name = 'Angel';
    

La misma tiene un alcance global y puede ser utilizada donde se necesite.

¿Que pasa cuando usamos una función?

Acá el scope de la variable declarada con var cambia ya que solo tiene acceso dentro de la función donde fue declarada, ejemplo:


function sayMyName() {
    var name = 'Angel';
    console.log(name);
}
sayMyName();
    

Efectivamente va a funcionar ya que veremos el output en la consola de desarrollo, a esto se le conoce como function scope

Y ya por último, halaremos sobre block scope

Por ejemplo:


var age = 100;

if (age > 12) {
    var dogYears = age * 7;
    console.log('Tienes ' + dogYears + ' años de perro') // Tienes 700 años de perro
}

A diferencia de function scope con los block scope ocurre algo interesante y es que se pueden acceder a las variables que esten dentro de {}

Si vamos a nuestra consola y escribimos dogYears vamos a tener como resultado el valor 700

Hablemos sobre let y const

Las variables declaradas con let y const son del tipo block scope

Por ejemplo:


var age = 100;

if (age > 12) {
    let dogYears = age * 7;
    console.log('Tienes ' + dogYears + ' años de perro') // Tienes 700 años de perro
}

Lo de arriba funcionaría exactamente igual, la unica diferencia estaría en el momento de acceder a la varaiable dogYears vamos a obtener un error de varaible no declarada ya que la variable declarada con let solo se puede acceder y usar dentro de {}

Esto tambíen ocurre si cambiamos let por cont.

Diferencias entre let y cont VS var

  • A diferencia de var, las variables declaradas con let y cont no se pueden reasignar
  • Puedes actualizar el valor de las variables declaradas con let al igual que las variables declaradas con var
  • No puedes actualizar el valor de las variables declaradas con const

Namecheap.com