同城信息网站建设宁波市住房和城乡建设局
2026/4/17 17:52:09 网站建设 项目流程
同城信息网站建设,宁波市住房和城乡建设局,宁波seo品牌推广排名,全自动建站系统源码文章目录在 JavaScript 中用 var, let, 以及 const 有什么差別#xff1f;什么时候该用哪个#xff1f;1.作用域不同2.声明上不同3.变量提升不同4.const 不允许重新赋值#xff08;rebind#xff09;延伸问题#xff1a;什么时候该用 let ? 什么时候用 const前置知识:若不…文章目录在 JavaScript 中用 var, let, 以及 const 有什么差別什么时候该用哪个1.作用域不同2.声明上不同3.变量提升不同4.const 不允许重新赋值rebind延伸问题什么时候该用 let ? 什么时候用 const前置知识:若不了解 JS 原生值和对象可以看如下博客JavaScript有哪些数据类型如何判断一个变量的数据类型在 JavaScript 中用 var, let, 以及 const 有什么差別什么时候该用哪个var、let 和 const 是 JavaScript 中用于声明变量的关键字在 JavaScript 早期只有var直到 ES2015 (ES6) 时才加入了let与const他们之间主要有 4 点不同作用域不同声明上不同变量提升上不同const 不允许重新赋值详细来说1.作用域不同var可以是全局的可以是以函数作为范围。 let 和 const则是以区块作为范围2.声明上不同var 可以反复的被重新声明 但是 let 和 const不行3.变量提升不同var 声明的变量会发生提升在作用域创建阶段即被声明并初始化为 undefined因此在赋值之前访问该变量不会报错而是得到 undefined。 但是let和const声明的变量不会自动初始化而是会进入到暂时死区TDZ在声明前使用会报错。4.const 不允许重新赋值rebindlet 和 const 在绝大多数情况都是一样的二者一个大区别在于用原生值和对象正常来说是可以重新绑定的重新绑定赋值但是 const 不允许接下来将会一一展开介绍1.作用域不同在作用域上var可以是全域、也可以是以函数作为范围let和const則是以区块作为范围。当我們在一个文件的最外层使用var来宣告变量这时它的范围就是全局因此当我们在 console 中输入var greeting hello; window.greeting; // hello其结果是 hello但是用 let和 const 声明则不会有同样效果var 除了在全局作用域var 在某个函数中的范围就是该函数2.声明上不同var 可以重复声明vargreetingHello! This ExplainThis :);vargreetingExplainThis is a website that helps you learn programming!;let 可以重新赋值rebind但是不能被重复声明// 不行不然会有 SyntaxError: Identifier greeting has already been declaredletgreetingHello! This ExplainThis :);letgreetingExplainThis is a website that helps you learn programming!;// 可以letgreetingHello! This ExplainThis :);greetingExplainThis is a website that helps you learn programming!;3.变量提升不同var 变量提升 自动初始化console.log(greeting);// undefinedvargreetinghi there;但是let和const则不会而是會進到暂时死区 (TDZ)因此在let和const声明变量前使用该变量会出现错误console.log(greeting);// Uncaught ReferenceError: greeting is not definedletgreetinghi there;补充暂时性死区的地方,在这个区域里任何对该变量的访问都会直接报错。只有当代码执行到声明该变量的那一行时它才能被“激活”和访问。4.const 不允许重新赋值rebindconst obj { a: 1 } obj.a 2 // ✅ 可以 obj.b 3 // ✅ 可以 obj { a: 100 } // 不可以不能 rebind const stringhello world stringhello js //不可以不能 rebindlet 是可以的当然了 var 也可以延伸问题什么时候该用 let ? 什么时候用 const没有一个标准答案业界目前普遍的观点是多数时候使用 const要重复赋值rebind的才用 let。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询