3

"var, let, const" are keywords in JS, you can not name your variables with keywords. but if you try to declare a variable named "let", it will work and throw no error.

e.g.

const = 13; //Uncaught SyntaxError: Unexpected token '='
var = 13; //Uncaught SyntaxError: Unexpected token '='
const let = 123; //Uncaught SyntaxError: let is disallowed as a lexically bound name
let let = 13; //Uncaught SyntaxError: let is disallowed as a lexically bound name
x = 13; //works good, so far so good

let = 13; //works fine,
++let // returns 14

at first, I thought because "let" is a new keyword (ES2015) so it's backward compatibility or something like that, but you can't do it with the const keyword or any JS keyword

anyone knows why?

Mohammed Saeid
  • 281
  • 2
  • 8

0 Answers0