let a=5; var b=6; console.log(this.a); //why we get undefined if we run this in global context. console.log(this.b); //output:6 let a=5; por qué nos quedamos indefinidos si console.log(this.a);
De los documentos web de MDN:
"a diferencia de la palabra clave var, que declara una variable globalmente o localmente a una función completa, independientemente del alcance del bloque. La otra diferencia entre var y let es que este último se inicializa en un valor solo cuando un analizador lo evalúa"
Puede leer más sobre esto aquí: MDN - let