首页 > 其他分享 >js(变量名提升)

js(变量名提升)

时间:2022-11-20 16:36:40浏览次数:51  
标签:function const 代码 js let 提升 var 变量名 声明

问:1.什么叫变量名提升 答:在js里 var 和function声明的变量或者函数可以在我们声明之前去使用他们,这种现象就叫变量名提升。   问:2.提升的原理是什么 答:js会把代码分为可执行代码和非可执行代码(声明代码:在代码评估时就会用了,而在执行栈里不会执行声明代码) 真正的变量提升本质:可执行代码执行之前,会有一个代码评估阶段,也被叫做预解析阶段,他会读取我们要执行的源代码,将所有以var function声明或者let,const声明的变量,事先给我们创建好,并且绑定在内存中,真正执行代码时,通过当前作用域找到绑定好的这些变量或者是函数了,var有初始化过程undifined,function也有初始化过程,let,const没有初始化过程,所以不能读取,读取就报错。   牢记: 在js中可将代码分为两类 1.声明代码 2.可执行代码(加断点进行调试)        var let(声明变量)const function class 或者异步函数async-function有关键字出现的都是声明代码 不能加断点进行调试 meta作用:给网页提供辅助信息的 (常见视口:meta 指定缩放 禁止用户缩放行为)     var function有提升  let const class无提升 有意义的是var和function声明的  var初始化 undefined值  function:(函数名初始化变量名)初始化对象 2.为什么let const没有变量提升 使用let const 声明变量时 在代码评估时,也会事先执行创建好,但是不会初始化值。 因此在let const 声明值前去使用该变量会报错。    

标签:function,const,代码,js,let,提升,var,变量名,声明
From: https://www.cnblogs.com/w-y-l-1/p/16908782.html

相关文章

  • Js函数:计算器、复选框
    <!DOCTYPEhtml><html><head><metacharset="utf-8"><title></title><script>functionmyFunction(){......
  • JS作用域和事件
    <!DOCTYPEhtml><html><head><metacharset="utf-8"><title></title></head><body><!--作用域与事件--><!--......
  • JSP知识
    资源https://blog.csdn.net/weixin_48112109/article/details/124764545 1.JSP介绍JSP的全称是JavaServerPages,即Java的服务器页面JSP的主要作用是代替Servlet程......
  • PHP解析WAYOS 路由 JSON数据
    <?php@header("content-type:text/html;charset=UTF-8");if(isset($_REQUEST['p'])){$p=$_REQUEST['p'];}else{$p='s';}if(isset($_REQUEST['d'])){......
  • P4047 [JSOI2010]部落划分 题解
    最小生成树做法之Kruskal算法流程(详细分析请看代码注释):1.初始化并查集并查集模板不过多解释,还不懂请参阅并查集-OIWiki。每个节点的祖先最开始都是自己。还有......
  • cJson 学习笔记
    cJson学习笔记一、前言思考这么一个问题:对于不同的设备如何进行数据交换?可以考虑使用轻量级别的JSON格式。那么需要我们手写一个JSON解析器吗?这大可不必,因为已经有......
  • JSP、JavaBean
    JSP什么是JSPJavaServerPages:java服务器端页面,也和Servlet一样,用于开发动态Web技术!最大的特点:写JSP就像在写HTML区别:HTML只给用户提供静态的数据JSP页面中可以......
  • 编程路-基础提升-第三周-01
    循环语句是编程类语言中不可缺少的部分,了解和熟悉循环语句,有利于快速编程。根据逻辑关系,调整循环嵌套同级的关系什么是循环:循环是重复发生的过程线性可变的是循环,否则就......
  • 编程路-基础提升-第二周-03
    常用的语句中if分支语句是不可缺少的内容。if分支语句1、什么是if分支语句1)用如果---就----2)if条件表达式会返回一个布尔类型的结果 ,if根据布尔类型进行判断2、if......
  • vue+JS 获取当前实时时间
    <template><divclass="container"><divclass="header"><h1>数据可视化-Echarts</h1><divclass="show-time">当前时间: {{......