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

公司做网站提供产品加盟费应用市场

公司做网站提供产品加盟费,应用市场,网站 创意 方案,深圳网站制作公司网站建设公司我是目录 引言声明提升声明提升的理解函数表达式声明提升总结代码生成与查找变量的过程代码生成词法分析( Tokenizing/Lexing)语法分析( Parsing)代码生成生成代码总结查找变量不同版本中的执行上下文不同版本对执行上下文的定义let/constlet特点const特点let/const声明的变…

我是目录

  • 引言
  • 声明提升
      • 声明提升的理解
      • 函数表达式
      • 声明提升总结
  • 代码生成与查找变量的过程
    • 代码生成
      • 词法分析( Tokenizing/Lexing)
      • 语法分析( Parsing)
      • 代码生成
      • 生成代码总结
    • 查找变量
  • 不同版本中的执行上下文
    • 不同版本对执行上下文的定义
  • let/const
    • let特点
    • const特点
    • let/const声明的变量,是否还会变量提升?
    • let/const是如何实现块级作用域的?

引言

上一篇作用域、执行上下文与闭包中,主要介绍的是概念,其中涉及很多细节和考点并没有详述。这一篇查缺补漏,讲一些有时候会考的东西(大概碰到过一两次?)。

声明提升

引擎会在解释 JavaScript 代码之前首先对其进行编译。 编译阶段中的一部分工作就是找到所有的声明, 并用合适的作用域将它们关联起来。包括变量和函数在内的所有声明都会在任何代码被执行前首先被处理。这个过程就好像变量和函数声明从它们在代码中出现的位置被“移动”到了最上面。 这个过程就叫作提升。
每个作用域都会进行提升操作,函数声明和变量声明都会被提升。

foo();
bar();
var foo = function bar() {// ...};

上段代码将被看成,所以会报错:

var foo;
foo(); // TypeError
bar(); // ReferenceError
foo = function() {var bar = ...self...// ...
}

但是一个值得注意的细节是函数会首先被提升, 然后才是变量。后面的函数声明还是可以覆盖前面的函数声明。

foo(); // 1
var foo;
function foo() {console.log( 1 );
} 
foo = function() {console.log( 2 );
};

会输出 1 而不是 2 ! 这个代码片段会被引擎理解为如下形式:

function foo() {console.log( 1 );
} 
foo(); // 1
foo = function() {console
http://www.hkea.cn/news/443779/

相关文章:

  • 广东深圳住房和城乡建设部网站文章优化软件
  • java制作动态网站开发怎么可以让百度快速收录视频
  • 做网站管理好吗阳泉seo
  • 网站排名优化建设seo人人网
  • html5可以做动态网站惠州seo计费
  • 商城网站带宽控制河南网站建设哪家公司好
  • 贵阳网络公司网站建设网络推广公司深圳
  • 企业网站建设公司电话西安seo分析报告怎么写
  • 岳阳市政府网网站seo优化报告
  • 门头沟网站建设外贸谷歌推广
  • 铜陵市住房和城乡建设委员会网站中国最新疫情最新消息
  • 动态网站建设 教程接广告推广的平台
  • 人力资源和社会保障部是干什么的seo最新快速排名
  • 网站标题关键优化网络营销代运营外包公司
  • 罗山网站建设seo网络推广优化
  • 如何在eclipse上做网站网站链接查询
  • 企业网站如何设计网页直通车推广计划方案
  • 简单的购物网站设计seo网络推广知识
  • 做众筹的网站关键词网站推广
  • 做网站 页面自适应渠道推广
  • 广东企业网站建设策划高端网站设计公司
  • wordpress文章批量编辑网站优化方案模板
  • 北京互联网公司开发的网站今日关注
  • 网站限制上传图片大小免费网络推广100种方法
  • 提供网站建设服务的网站价格快速推广
  • 政府网站建设原则 统筹规划进入百度官网
  • 网站如何做等级保护谷歌搜索引擎363
  • 天河网站建设网络推广不属于网络推广方法
  • 阜阳中国建设银行官网站百度提交入口网站网址
  • 游戏网站怎么建设广告营销公司