Contenido del curso
Nombre y uso de las variables
Ámbito de las variables
Funciones
Clases
Optimizaciones
Cierre
Ámbito global
Contenido del curso
Ámbito global
Alejandro Daniel Calderón Prin
EstudianteKyb3r Cipher
EstudianteCesidio Antonio Di Benedetto Carri
EstudianteReinaldo Mendoza
EstudianteJonathan Meixueiro
EstudianteBinaryTreeCode
EstudianteCamilo Alvarez Avila
EstudianteAgustina Corvo
EstudianteYan Harold Muñoz Dominguez
EstudianteBuena imagen
A pesar de que let esta en un scope global
let greeting = "Hello world!"; function greet() { console.log(greeting); } greet();
Si se re-declara dentro de la función greet este puede no funcionar, es decir:
let greeting = "Hello world!"; function greet() { console.log(greeting); let greeting = 'another hello world'; } greet();
Ahora el let que se usara dentro de la función sera el interno y al ser declarado despues de su uso, dara error
Le estas cambiando el scope y de hecho seria una mala practica
Y esto pasa porque las funciones le dan prioridad a las variables locales, que esto ya es una mala práctica como menciona Reinaldo, ya que no deberíamos usar el mismo nombre para diferentes variables, también es un error declarar una variable después de que se usa, que en el ejemplo que pones, lo que hace es ignorar la variable greeting global, ya que tiene una dentro con ese nombre, entonces aquí es como si** let greeting = 'Hello world!'** no existiera y let greeting = 'another hello world' se declaró y asignó después de que se le llamó.
Tengo una pregunta, solo por curiosidad. El nombre la función (greet), no estaría mal con respecto a la anterior clase que acabamos de ver?
En este caso que es solo imprimir en pantalla un saludo y no tiene ninguna complejidad, entiendo que el nombre de la función es adecuado. Es claro y expresa lo que hace.
let greeting = 'Hello world' function greet (){ console.log(greeting); } greet();