susanahernandezd
7/21/2019 - 6:54 AM

Conceptos Javascript


** TIPOS LENGUAJE TIPADO:
- Tipado fuerte: son aquellos que no permiten comparar u operar con tipos de datos distintos sin realizar una conversión previa (Java, Python)
- Tipado blando (o no tipado): significa que las variables son declaradas sin un tipo. La declaración de variables no exige la asociación con un tipo de datos de forma implícita y unívoca
http://www.etnassoft.com/2011/01/27/tipado-blando-en-javascript/

**HOISTING
En Javascript, cuando se define una variable en el interior de una función, el intérprete interno pasa a ubicarla al comienzo de su contexto (la eleva)

var x = "Valor global"
function foo() {
  console.log(x); // esperamos el valor global pero obtenemos undefined
  var x = "New value";
  console.log(x); // printa "New value"
}
foo();

// Esto se traduce en: 
var x = "Valor global"
function foo() {
  var x;
  console.log(x); // esperamos el valor global pero obtenemos undefined
  x = "New value";
  console.log(x); // printa "New value"
}
foo();

// Si quisieramos SOBRESCRIBIR la variable x, tendríamos que hacer:
var x = "Valor global"
function foo() {
  console.log(x); // printa valor global
  x = "New value";
  console.log(x); // printa "New value"
}
foo();