title: declaring without initialization for var, let, const
body: <p>Hello I am trying to see how let, var and const work in the following code :</p>
  <pre><code>console.log(a)
  b()
  var a = 'Hello World!';
  
  function b() {
      var c = 'yo'
      console.log('entered b')
      console.log(a, c)
  }
  </code></pre>
  <p>over here the program works fine for when 'a' is var but does not for 'let' and 'const'. I understand why it does so for 'const' as it's not been declared during initialization but why does 'let' not work and throw error similar to const about not being initialized. can't 'let' be declared without initialization similar to 'var'?</p>