ES6块级作用域详解

众所周知es5之前javascript语言只有函数作用域和全局作用域,使用var来声明变量,var声明的变量还存在变量提升使人困惑不已。我们先来复习一下es5的var声明,再对比学习let和const 。

var

var声明之函数作用域和全局作用域。

来段代码体会一下:

function getName() { if (1 + 1 === 2) { var name = 'xixi'; } console.log(name);}getName();//xixi

登录后复制

在c或java语言中name本应该只在if块中使用的,但是在if的外面也可以访问到,这个就是 js没有块级作用域的一种体现。这个弊端在for循环中体现的十分明显:

for (var i = 0; i < 10; i ++) { // ...}console.log(i);// 10

登录后复制

var i的本意是声明个临时变量i,用来遍历数组等,本不应该在for循环的外部访问到,但现在却可以被访问到你说闹不闹心?好一点的程序员会用立即执行函数来模拟块级作用域,原来的我会注意一下尽量不使用相同的变量名

以上就是ES6块级作用域详解的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2788729.html

(0)
上一篇 2025年3月8日 18:30:30
下一篇 2025年3月8日 18:30:40

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • MUI顶部选项卡的用法详解

    mui是一款最接近原生app体验的高性能前端框架,它的比较重要的功能是:下拉刷新、侧滑导航、滑动触发操作菜单和顶部(底部)选项卡等。 最近用MUI做手机app应用的时候,遇到的小bug。顺便研究了一下这个tab-top-webview-ma…

    编程技术 2025年3月8日
    200
  • Angular2模块懒加载实例详解

    本文主要介绍了浅谈angular2 模块懒加载的方法,小编觉得挺不错的,现在分享给大家,希望能帮助到大家。 当项目变得复杂庞大以后,如果所有页面都在一个模块里,就会出现首页加载慢的问题,因为首页就已经把整个项目加载进来了。所以,很有必要根据…

    2025年3月8日
    200
  • angular2路由预加载实例详解

    本文主要介绍了浅谈angular2路由预加载策略,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。 1.问题描述 在没有使路由懒加载的时候,第一次使用的时候加载特别慢,影响用户体验,angula…

    2025年3月8日
    200
  • JS数据访问对象模式详解

    本文主要为大家带来一篇js设计模式之数据访问对象模式的实例讲解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。 问题 大部分网站会将一些数据(如:用户Token)存储在前端,用来实现页面间的…

    编程技术 2025年3月8日
    200
  • vue路径优化之resolve详解

    通过vue-cli来创建vue+webpack的项目时,已经有很多都配置好了,但是路径方面为了方便开发,还可以优化。本文主要介绍vue路径优化之resolve,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望…

    编程技术 2025年3月8日
    200
  • Vue组件及数据传递详解

    本文我们就和大家详细介绍一下Vue系列(三):组件及数据传递、路由、单文件组件、vue-cli脚手架,希望能帮助到大家。 一、 组件component 1. 什么是组件? 组件(Component)是 Vue.js 最强大的功能之一。组件可…

    编程技术 2025年3月8日
    200
  • vue阿里云上传组件详解

    本文主要介绍如何在vue项目中使用web直传方式上传阿里云oss图片,默认读者对vue框架和阿里云oss有一定的了解,整体的流程是加载好阿里云sdk -> 初始化上传客户端client -> 等待文件选择 -> 文件选择进…

    编程技术 2025年3月8日
    200
  • Angular4中常用管道实例详解

    通常我们需要使用管道实现对数据的格式化,angular4中的管道和之前有了一些变化。本文主要介绍angular4中常用管道,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。 一、大小写转换管道 …

    编程技术 2025年3月8日
    200
  • Vue shopCart 组件开发实例详解

    本文主要和大家介绍vue shopcart 组件开发详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。 一、shopCart组件 (1) goods 父组件和 子组件 shopCart 传参…

    编程技术 2025年3月8日
    200
  • js数组和对象的深浅拷贝详解

    本文主要为大家详细介绍js实现数组和对象的深浅拷贝,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望梦帮助到大家。 前提:原始数据类型和对象类型赋值时的差异 JavaScript的数据类型分为原始数据类型和对象类型。二者在内存中存放的…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论