返回顶部
首页 > 资讯 > 前端开发 > VUE >es6中不用var而是用let的原因是什么
  • 500
分享到

es6中不用var而是用let的原因是什么

2024-04-02 19:04:59 500人浏览 泡泡鱼
摘要

本文小编为大家详细介绍“es6中不用var而是用let的原因是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“es6中不用var而是用let的原因是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深

本文小编为大家详细介绍“es6中不用var而是用let的原因是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“es6中不用var而是用let的原因是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

因为var在if、for循环中是没有作用域的,只有借助function的作用域来解决引用作用域外面的变量的问题;而let在if、for循环中是有块级作用域的,这是var所没有的功能,所以es6中使用let关键字而不是使用var。

教程操作环境:windows10系统、ECMAScript 6.0版、Dell G3电脑。

es6中为什么不用var而是用let

因为在之前的javascript(ES5之前)中,var在像 if ,for循环中是没有作用域的,只有借助function的作用域来解决引用作用域外面的变量的问题

在ES6中加入了let,它在if和for中是有块级作用域的,let拥有块级作用域,一个{}就是一个作用域,也就是let声明块级变量,即局部变量.

const 也是有块级作用域的,当我们的修饰的标识符不想再被改变赋值时用const

建议在ES6开发中优先使用const,只有想改变一个标识符的时候才使用let

注意

  • 1.const赋值后不能修改

  • 2.用const定义标识符必须赋值

  • 3.常量的定义是指向的对象不能修改,但是对象的属性可以修改

es6中不用var而是用let的原因是什么

按照一般逻辑,变量应该在声明语句之后才可以使用,但在上面的代码中,是声明之前输出foo的值,且这个值为undefined,这就说明变量在声明之前就已经存在了。为什么用var会出现这种问题呢?

这里就是人们经常说的变量提升,即变量可以在声明之前使用,值为undefined。

我们console用let声明的变量bar,报错了,这就表示声明之前,变量bar是不存在的,这里就没有变量提升的现象出现。为了纠正这种现象,让大家更好的理解代码,let命令改变了语法行为,它所使用的变量一定要在声明之后使用,否则就会报错。

读到这里,这篇“es6中不用var而是用let的原因是什么”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网VUE频道。

--结束END--

本文标题: es6中不用var而是用let的原因是什么

本文链接: https://lsjlt.com/news/97214.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • es6中不用var而是用let的原因是什么
    本文小编为大家详细介绍“es6中不用var而是用let的原因是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“es6中不用var而是用let的原因是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深...
    99+
    2024-04-02
  • es6引用let的原因是什么
    这篇文章主要讲解了“es6引用let的原因是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“es6引用let的原因是什么”吧! ...
    99+
    2024-04-02
  • JavaScript ES6语法中let,const ,var的区别是什么
    JavaScript ES6语法中let,const ,var的区别是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、变量声明的方式let / con...
    99+
    2023-06-26
  • es6中let指的是什么
    这篇文章主要介绍“es6中let指的是什么”,在日常操作中,相信很多人在es6中let指的是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”es6中let指的是什么”的疑惑...
    99+
    2024-04-02
  • JavaScript中var与let的区别是什么
    本篇文章给大家分享的是有关JavaScript中var与let的区别是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。前言:var是JavaScript刚出现时就存在的变量声...
    99+
    2023-06-22
  • var、let及const的区别是什么
    这篇文章主要介绍了var、let及const的区别是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇var、let及const的区别是什么文章都会有所收获,下面我们一起来看看吧。什么是JavaScript?首...
    99+
    2023-07-04
  • JavaScript中var,let和const的区别是什么
    这篇文章主要为大家展示了“JavaScript中var,let和const的区别是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JavaScript中var...
    99+
    2024-04-02
  • ES6中let、const的区别是什么
    这篇文章将为大家详细讲解有关ES6中let、const的区别是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。let和const相同点都存在块级作用域都不存在变量声明提...
    99+
    2024-04-02
  • es6中class继承调用super的原因是什么
    本文小编为大家详细介绍“es6中class继承调用super的原因是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“es6中class继承调用super的原因是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧...
    99+
    2023-07-04
  • es6中let和const的区别是什么
    这篇“es6中let和const的区别是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“...
    99+
    2024-04-02
  • ES6中let和const的特性是什么
    这篇文章主要介绍了ES6中let和const的特性是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。let的特性:1.不存在变量提升现象:...
    99+
    2024-04-02
  • javascript的var与let,const的区别是什么
    本篇内容主要讲解“javascript的var与let,const的区别是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“javascript的var与let,const的区别是什么”吧!说到...
    99+
    2023-06-22
  • 微信小程序中使用var that=this的原因是什么
    这篇文章主要为大家展示了“微信小程序中使用var that=this的原因是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“微信小程序中使用var that=...
    99+
    2024-04-02
  • 分布式锁要选择Zookeeper而不是Redis的原因是什么
    这篇文章给大家分享的是有关分布式锁要选择Zookeeper而不是Redis的原因是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在分布式的应用中,为了防止单点故障,保障高可用,通常会采用主从结构,当主节点挂掉...
    99+
    2023-06-15
  • javascript变量声明var,let,const的区别是什么
    本文小编为大家详细介绍“javascript变量声明var,let,const的区别是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“javascript变量声明var,let,const的区别是什么”文章能帮助大家解决疑惑,下面跟着小...
    99+
    2023-06-30
  • MySQL用B+树(而不是B树)做索引的原因
      https://www.jianshu.com/p/7ce804f97967 众所周知,MySQL的索引使用了B+树的数据结构。那么为什么不用B树呢? 先看一下B树和B+树的区别。 1.B树 维基百科对B树的定义为“在计算...
    99+
    2020-03-03
    MySQL用B+树(而不是B树)做索引的原因
  • swoole不能用sleep的原因是什么
    这篇文章主要介绍“swoole不能用sleep的原因是什么”,在日常操作中,相信很多人在swoole不能用sleep的原因是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”swoole不能用sleep的原因...
    99+
    2023-06-30
  • css不起作用是什么原因
    这篇文章主要讲解了“css不起作用是什么原因”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css不起作用是什么原因”吧! css...
    99+
    2024-04-02
  • let在JavaScript中的作用是什么
    本篇内容主要讲解“let在JavaScript中的作用是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“let在JavaScript中的作用是什么”吧! ...
    99+
    2024-04-02
  • MySQL中不使用Text类型的原因是什么
    MySQL中不使用Text类型的原因是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。众所周知,MySQL广泛应用于互联网的OLTP(联机事...
    99+
    2024-04-02
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作