PHP前端开发

JavaScript 中 let、const、var 的区别?

百变鹏仔 2个月前 (10-14) #JavaScript
文章标签 区别

在 javascript 中,let、const 和 var 用来声明变量,但它们在三个方面有所不同:

1.范围
2.重新分配
3.吊装

1.范围:

var 是一个函数作用域,意味着我们在函数内的任何位置访问 var 变量,如果我们尝试在函数外部访问它,它将显示错误 undefined
示例:-

function demo(){  if(true){    var n = 3;  }  console.log(n)}console.log(n) //referenceerror: n is not defineddemo();

let & const 是块意味着我们只能在范围内访问它们,否则会显示未定义的错误
示例:-

function demo(){  if(true){    let n = 3;    const m = 5;     console.log(n) // 3     console.log(m) // 5  }  console.log(n) //referenceerror: n is not defined  console.log(m) //referenceerror: n is not defined}console.log(n) //referenceerror: n is not definedconsole.log(m) //referenceerror: n is not defineddemo();

2.重新分配

3.吊装

// var exampleconsole.log(a); // undefined (due to hoisting)var a = 10;console.log(a); // 10// let exampleconsole.log(b); // ReferenceError: Cannot access 'b' before initializationlet b = 20;console.log(b); // 20// const exampleconst c = 30;c = 40; // TypeError: Assignment to constant variable