前端笔记——var let const 之间的区别

Var:

关键字来声明变量。它有以下特点:

  • var声明的变量作用域是函数级的,即在函数内部声明的变量在整个函数范围内可见。

  • var变量可以被重复声明,而不会引发错误。

  • var变量会存在变量提升(hoisting)现象,即在变量声明之前就可以使用该变量。

    示例:

    javascript 复制代码
    jsCopy Codefunction example() {
      if (true) {
        var x = 10;
        console.log(x); // 输出 10
      }
      console.log(x); // 输出 10,因为 var 声明的变量是函数级作用域,所以此处可以访问到 x。
    }

Let:

在ES6中引入了let关键字

  • let声明的变量作用域是块级的,即在 {} 内部声明的变量只在该块内可见。

  • let变量不允许重复声明,在同一作用域内重复声明同一个变量将引发错误。

  • let变量不会存在变量提升,即在声明之前访问该变量会引发错误。

    示例:

    javascript 复制代码
    function example() {
      if (true) {
        let x = 10;
        console.log(x); // 输出 10
      }
      console.log(x); // 报错,因为 let 声明的变量是块级作用域,无法在块外访问到 x。
    }

Const:

关键字用于声明常量:

  • const声明的变量必须进行初始化,并且一旦赋值后就不能再被修改。

  • const声明的作用域同样是块级的。

  • const声明的对象是浅不可变的,即变量指向的地址不能改变,但是对象本身的属性可以修改。

    示例:

    javascript 复制代码
    function example() {
      const x = 10;
      console.log(x); // 输出 10
    ​
      x = 20; // 报错,常量无法被修改
    ​
      const obj = { name: 'John' };
      obj.name = 'Jane'; // 可以修改对象的属性
      console.log(obj); // 输出 { name: 'Jane' }
    }

我只是博主的一点浅见,如果大家认为有错误的地方都可以随时评论留言或联系博主QQ。

还多请各位小可爱多多点赞支持,你们的支持是我最大的动力。

博主QQ:1196094293

谢谢各位的支持~~

相关推荐
小李小李不讲道理11 分钟前
「Ant Design 组件库探索」二:Button组件
前端·react.js·ant design
互联网搬砖老肖1 小时前
Web 架构之 CDN 加速原理与落地实践
前端·架构
会飞的鱼先生1 小时前
javascript中Cookie、BOM、DOM的使用
前端·javascript·chrome
OpenTiny社区1 小时前
开源之夏·西安电子科技大学站精彩回顾:OpenTiny开源技术下沉校园,点燃高校开发者技术热情
前端·开源
多多*1 小时前
基于rpc框架Dubbo实现的微服务转发实战
java·开发语言·前端·redis·职场和发展·蓝桥杯·safari
灏瀚星空1 小时前
用HTML5 Canvas打造交互式心形粒子动画:从基础到优化实战
前端·html·html5
Jackson__2 小时前
聊一下HTTP 与 HTTPS 的区别,以及HTTPS 的加密方式
前端·面试
一抓掉一大把2 小时前
MiniExcel模板填充Excel导出
开发语言·javascript·ecmascript
好运yoo2 小时前
npm install的原理
前端·npm
Jiaberrr2 小时前
uniapp 安卓 APP 后台持续运行(保活)的尝试办法
android·前端·javascript·uni-app·app·保活