当前位置: 首页 > news >正文

ES6 let和var的区别是什么?

1.首先大概说下什么是ES6.

  以前开发多少都是ES5,其中它里面包括很多特性,制定了许多语法规则。比如。解析规则,关键字,语法糖,闭包,继承,原型等等

  而ES6简单的讲就是javaSeript的第6大版本,其中在ES5基础上新加了许多新特性、比如:

  1.    箭头函数 ()=>{}
  2.    字符串插值
  3.    代理
  4.    生成器
  5.    .....

其中let和const则是ES6一个代表、与ES5中的var区别很对多,废话不多说,开讲

let和var区别:

相同点: 作用都是定义变量关键字

区别点:

  •  作用域只限制于当前代码块{}   -----   var的作用域则是函数体function(){}
  •  使用let声明变量的作用域不会提示  -----   而var会自动提升
  •  在相同的用作用域下不能有相同的变量,否则报错  ------   而var中则可以出现相同变量名,且不会报错。
  •  for循环提现父子作用域。

    比如以前ES5、在循环中找不到你的 i 值,则会上面找,这样往往是不合逻辑的,解决办法可以使用闭包完美解决    

    而ES6出现了let则不用闭包,他自带有作用域的限制,这样就能很好的满足我们的逻辑了

let和const区别:

相同 :都是ES6新特性

  1. .作用定义变量关键字
  2. 作用域一样
  3. 都不能重复声明相同的变量

区别点:

  1. let是声明普通变量  const是声明常量
  2. let初始化可以不赋值。const初始化必须赋值
  3. let声明的变量值可以被修改  const声明的常量不能修改值。否则报错(除对象。或者引用类以外)

 2、这三者各有各的的优点,在开发需要理解两者区别,才能更好的简单解决问题。运用他们。谢谢

相关文章:

  • js 将多个对象合并成一个对象 assign方法。ES6新特性有哪些
  • Vue中显示img图片,显示不出来怎么办?vue显示图片
  • Vue项目打包组件并上传到npm在其他项目和下载引用 步骤流程
  • Vue-Cli3 配置文件 全局生产环境及开发环境
  • git 常用命令 会这些就够了
  • CSS3 弹性盒子布局
  • CSS 开发常用
  • 浏览器兼容CSS的坑 对应前缀及CSS预处理
  • 饿了么平台最全开发API接口列表 elm接口 2019
  • js cookei 日期转换 随机ID 随机颜色 数组位置打乱 工作开发提升效率
  • Vue SSR服务端渲染 vue预渲染
  • Nuxt.js 入门到实战 多参数 中间件 插件异步获取数据
  • Vue 自定义拖拽指令 v-drag vue+element 实现拖拽 Drag 弹框
  • github 按条件查找项目 按star 语言 日期 排名 寻找实战案例模板等项目
  • 图片img懒加载实现原理方案懒加载优化用户体验
  • 【Leetcode】101. 对称二叉树
  • 【vuex入门系列02】mutation接收单个参数和多个参数
  • CAP理论的例子讲解
  • Computed property XXX was assigned to but it has no setter
  • Docker下部署自己的LNMP工作环境
  • Java 内存分配及垃圾回收机制初探
  • Java的Interrupt与线程中断
  • nodejs实现webservice问题总结
  • Python语法速览与机器学习开发环境搭建
  • SpringCloud(第 039 篇)链接Mysql数据库,通过JpaRepository编写数据库访问
  • vue-loader 源码解析系列之 selector
  • vue学习系列(二)vue-cli
  • 极限编程 (Extreme Programming) - 发布计划 (Release Planning)
  • 提醒我喝水chrome插件开发指南
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • [地铁译]使用SSD缓存应用数据——Moneta项目: 低成本优化的下一代EVCache ...
  • Java性能优化之JVM GC(垃圾回收机制)
  • LevelDB 入门 —— 全面了解 LevelDB 的功能特性
  • 没有任何编程基础可以直接学习python语言吗?学会后能够做什么? ...
  • ​【已解决】npm install​卡主不动的情况
  • ​无人机石油管道巡检方案新亮点:灵活准确又高效
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • #1015 : KMP算法
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • ${factoryList }后面有空格不影响
  • (11)工业界推荐系统-小红书推荐场景及内部实践【粗排三塔模型】
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (笔试题)分解质因式
  • (二)丶RabbitMQ的六大核心
  • (附源码)ssm高校社团管理系统 毕业设计 234162
  • (区间dp) (经典例题) 石子合并
  • (十七)Flask之大型项目目录结构示例【二扣蓝图】
  • (一)Neo4j下载安装以及初次使用
  • (转)C#开发微信门户及应用(1)--开始使用微信接口
  • (转)JAVA中的堆栈
  • (转)关于pipe()的详细解析
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .NET Core 项目指定SDK版本
  • .Net Core和.Net Standard直观理解