разница быть другим
Var ограничен функцией
// variable a cannot be used here function helloWorld() { // variable a can be used here var a = 'hello'; console.log(a); } helloWorld(); // hello
Переменная «a» объявляется с помощью «var». Переменная «a» может использоваться только внутри функции helloWorld.
Пусть это блочная область
function helloWorld() { let a = 'hello'; // variable b cannot be used here if(a == 'hello'){ // variable b can be used here let b = 'world'; console.log(a + ' ' + b); } // variable b cannot be used here console.log(a + " " + b); // error } // variable a cannot be used here helloWorld(); Output ====== hello world /tmp/pLCnzCjIMc.js:13 console.log(a + " " + b); // error ^ ReferenceError: b is not defined at helloWorld (/tmp/pLCnzCjIMc.js:13:27) at Object.<anonymous> (/tmp/pLCnzCjIMc.js:17:1) at Module._compile (internal/modules/cjs/loader.js:778:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10) at Module.load (internal/modules/cjs/loader.js:653:32) at tryModuleLoad (internal/modules/cjs/loader.js:593:12) at Function.Module._load (internal/modules/cjs/loader.js:585:3) at Function.Module.runMain (internal/modules/cjs/loader.js:831:12) at startup (internal/bootstrap/node.js:283:19) at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
При использовании ключевого слова Let область действия находится только внутри этого блока. Если на него ссылаются извне, он сломается, как показано выше. let широко используется в javascript. И let, и var используются только для объявлений переменных.
Знание маленьких вещей помогает нам достичь чего-то большого :)