javascript 暂时性死区[通俗易懂]

javascript 暂时性死区[通俗易懂]暂时性死区:ES6之前JS的一个BUG(美其名曰暂时性死区)。在使用typeof等运算符操作一个未声明的变量时,不会报错,该变量的值以undefined作处理ES6:ES6的变量声明方法(let,const,class…)解决了暂时性死区问题,会进行显式报错。ES6之前的暂时性死区console.log(typeofa); //undefined(noerror)ES6之后的变量声明console.log(typeofa); //UncaughtRefe..

大家好,又见面了,我是你们的朋友全栈君。

  • 暂时性死区:在ES6之前,使用 typeof 运算符操作一个未声明的变量时,不会报错,该变量的值以 undefined 作处理。而在ES6之后,使用ES6的变量声明方法(let, const, class…)声明的变量,不可在声明前使用 typeof 操作,否则会进行显式报错ES6变量声明前的代码区域,称为 “暂时性死区”
  1. ES6之前

    console.log(typeof a);	// undefined (a没有使用var或function声明,但 no error)
    
  2. ES6之后的变量声明(会进行显式报错

    /* 暂时性死区--start */
    console.log(typeof a);	// Uncaught ReferenceError: a is not defined
    /* 暂时性死区--end */
    let a;
    
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/147764.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • netty pooled vs unpooled ByteBuf

    netty pooled vs unpooled ByteBufWhatsthedifferencebetweenPooledvsUnpooledandDirectvsHeapinByteBuf?Like,whatdoespooledmeansincontextofamessagereceived,becauseobjectlikeHttpRequestiscreatedfromBy…

    2025年6月7日
    2
  • NVIC 中断优先级管理详解

    NVIC 中断优先级管理详解1.NVIC(内嵌向量中断控制器)NVIC:NestedVectoredInterruptController,STM32系列有84个中断,相对于的开发板STM32F103系统

    2022年5月28日
    33
  • linux 查看tomcat日志 关键字「建议收藏」

    linux 查看tomcat日志 关键字「建议收藏」转载:https://blog.csdn.net/u013410747/article/details/711921401catapp.log|grep‘error’2.查询日志尾部最后10行的日志tail-n10app.log3.查询10行之后的所有日志tail-n+10app.log4.查询日志文件中的头10行日志head-n1…

    2022年6月20日
    33
  • 【windows屏幕扩展】把你多余屏幕利用起来,spacedesk屏幕扩展超低延迟解决方案[通俗易懂]

    【windows屏幕扩展】把你多余屏幕利用起来,spacedesk屏幕扩展超低延迟解决方案[通俗易懂]目录扫盲扫盲spacedesk是一款基于TCP/IP协议的屏幕扩展工具,通过这款工具你可以把自己身边的闲置的平板手机或者笔记本利用起来,扩展你的屏幕。只要你的两台设备处于同一个网络环境下(只要互相能够ping通),你就可以实现屏幕扩展(卡不卡我就不知道了)。用过win10中的wifi扩展屏幕的同学都知道,扩展的屏幕显示质量和网络环境成正比。而win10的屏幕扩展很玄学,…

    2022年8月13日
    7
  • 超简单部署使用Maven私库 Nexus

    超简单部署使用Maven私库 Nexusdocker拉取:dockerpulldocker.io/sonatype/nexus3运行容器:dockerrun-d-p8085:8081–namenexusdocker.io/sonatype/nexus,映射到本地的8085端口,等一会儿就好了,用dockerps-a命令查看访问地址:http://192.64.23.111:8085/)…

    2022年7月18日
    13
  • 关于Java中两个整数相除,有余数就向上取整的问题

    关于Java中两个整数相除,有余数就向上取整的问题如果是两个整数相除,那么结果的小数点以后的数字会被截断,使运算结果为整数,再进行向上取整会拿不到想要的值。所以如果希望得到运算结果能够保留小数点后面的数,就需要这两个整数至少有一个类型转换为浮点数。比如://这里相减是我代码里复制来的逻辑根据实际情况转型就行了intnumberA=8;intnumberB=2;//将结果转换为floatfloatnumberC=…

    2022年6月21日
    144

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号