位置: 编程技术 - 正文

谈谈我对JavaScript原型和闭包系列理解(随手笔记9)(谈谈我对中国传统文化的理解)

编辑:rootadmin

推荐整理分享谈谈我对JavaScript原型和闭包系列理解(随手笔记9)(谈谈我对中国传统文化的理解),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:谈谈我对中国传统文化的理解,谈谈我对环境保护的认识,谈谈我对中国传统文化的理解,谈谈我对秦始皇的看法,谈谈我对美的认识,谈谈我对教师的理解,谈谈我对环境保护的认识,谈谈我对美的认识,内容如对您有帮助,希望把文章链接给更多的朋友!

相关阅读:谈谈我对JavaScript原型和闭包系列理解(随手笔记6) 谈谈我对JavaScript原型和闭包系列理解(随手笔记8)

作用域

引用《JavaScript语言精粹和编程实践》上对作用域的定义:

变量作用域又叫变量的可见性。变量作用域完成对信息的隐蔽,也就是处理“割据”问题。

js中是没有块级作用域的(ES6中有一个let,可以在{},if,for里面声明,同时作用域限定在块级。let声明的变量不存在变量提升!这里不谈论这个,因为我也是偶然看到。)。

我们在编写代码的时候,不要在“块”里面声明变量,应该在代码的一开始就声明好,以避免发生歧义。

javascript除了全局作用域之外,还有一个函数作用域。

我们在声明变量的时候,全局代码在最前端声明,函数中声明变量要在函数体前面声明。同时,声明变量的时候必须用"var"操作符。

全局代码、fn函数和bar函数都会形成一个作用域。作用域有上下级关系,上下级关系是看函数在哪个作用域下创建的。fn函数作用域下创建了bar函数,"fn函数作用域"就是"bar函数的作用域"的上级。

作用域的最大用处就是隔离变量,不同作用域下同名变量不会有冲突

--------------------------------------------------------------------------------

作用域在函数定义的时候就已经确定了,而不是函数调用的时候确定。

1、程序在加载的时候就已经确定了全局上下文环境,并随着程序的执行而对变量就行赋值。

谈谈我对JavaScript原型和闭包系列理解(随手笔记9)(谈谈我对中国传统文化的理解)

2、执行到行,调用fn(),创建fn函数的执行上下文环境,压栈,并将此上下文设置为活动状态。

3、执行到行,调用bar(),创建bar()函数的执行上下文环境,压栈,并将此上下文设置为活动状态。

4、bar()调用完毕,出栈,bar()函数上下文环境被销毁。接着执行行,调用bar(),创建bar()函数的执行上下文环境,压栈,并将此上下文设置为活动状态。

5、bar()调用完毕,出栈,其上下文环境被销毁。此时的控制权交给了fn()上下文环境,其再次变为活动状态。

6、此时fn()调用完毕,出栈,其上下文环境被销毁。控制权交给了全局执行上下文环境。

到这里这一段代码的执行过程就跑完了。

然后借用一下原作者的完整图:

总结:

作用域只是一个“地盘”,要通过作用域对应的执行上下文环境来获取变量的值。同一个作用域下,不同的调用会产生不同的执行上下文环境,继而产生不同的变量的值。所以,作用域中变量的值是在执行过程中产生的确定的,而作用域却是在函数创建时就确定了。所以,如果要查找一个作用域下某个变量的值,就需要找到这个作用域对应的执行上下文环境,再在其中寻找变量的值。

基于JS2Image实现圣诞树代码 马上圣诞节了,作为一名程序猿,如何体现自己独特的过节风格,如何在朋友圈发一张专属自己的祝福照片我觉得很有必要,你们说是不是。谈到圣诞

JS实现部分HTML固定页面顶部随屏滚动效果 本文实例讲述了JS实现部分HTML固定页面顶部随屏滚动效果。分享给大家供大家参考,具体如下:我们经常在淘宝网看到这样的特效,商品列表特别长,

javascript与jquery中的this关键字用法实例分析 本文实例分析了javascript与jquery中的this关键字用法。分享给大家供大家参考,具体如下:this表示当前的对象,这个当前对象可以是表单,p等任何元素1.ja

标签: 谈谈我对中国传统文化的理解

本文链接地址:https://www.jiuchutong.com/biancheng/385539.html 转载请保留说明!

上一篇:谈谈我对JavaScript原型和闭包系列理解(随手笔记8)(谈谈我对美国的印象)

下一篇:基于JS2Image实现圣诞树代码(jsgenerator)

  • 电子税务局能查到个税申报信息吗
  • 哪些税不用通过应交税费
  • 出售股票税费处理投资收益在贷方
  • 车辆购置税怎么交网上缴费
  • 增值税专用发票有效期是多长时间
  • 个体生产经营所得税税率表
  • 个人转租房屋是什么意思
  • 增值税是购货方交还是销货方交
  • 贷款利息进项税额转出
  • 补去年收入的会计分录
  • 企业转给法人的流程
  • 雇主责任险为什么不能立即生效
  • 哪些房屋交易需要公证
  • 增值税预缴表填写模板
  • 印刷专票税率是几个点
  • 一般纳税人装饰装修工程税率
  • 损益表和利润表的关系
  • 体现公司财务状况的报表
  • 税务大厅申报社保需要资料
  • 交通票报销有哪些
  • 购进生产用原材料,取得增值税专用发票注明税额25600元
  • 到期赎回的理财有风险吗
  • 委托贷款利息收入增值税
  • 代理费是指
  • 购置土地税款怎么入账?
  • 跨年销项税红字发票会计处理?
  • 上月计提费用本月怎么做账
  • 买手机5000预算
  • 增值税专用发票和普通发票的区别
  • 000.exe病毒
  • 如何禁用win10自动修复
  • vue 高德地图 窗体
  • 确定注册资本的方法
  • 汇算清缴中企业基础信息表
  • 工程结算
  • 我国居民企业甲在境外进行了投资
  • 微信小程序前端源码
  • 注册造价师挂靠费如何缴个税?
  • uni-app介绍
  • struts2漏洞检测工具下载
  • 悬崖徒步
  • 增量留抵税额是
  • 华为od测试岗机试需要怎么准备
  • html/css/javascript
  • vue路由跳转携带参数怎么接收
  • 以小物件为话题写出背后的故事
  • mysql如何上锁
  • 施工企业的人工费占比
  • PostgreSQL教程(二):模式Schema详解
  • sql server 2000数据库不能备份的原因
  • SQL server 2008中的数据库能否只包含数据文件
  • 社保缴费基数应该怎么算
  • 商品入库进项税不抵扣会计分录
  • 出口退税帐务处理
  • 交易性金融资产入账价值怎么计算
  • 固定资产折旧指标有哪些
  • 待抵扣进项税会计分录实操
  • 企业退款给个人多久到账
  • 汽车属于固定资产类吗
  • 制造费用会计科目
  • 支付宝支付高速通行费如何开发票
  • 销售毛利率越高越好吗
  • centos7怎么配置yum源
  • linux服务器宕机排查
  • 如何关闭office开机自启动
  • win7网络连接不见了
  • linux在实际工作中的应用
  • python2.7安装numpy
  • cocos2dx游戏开发
  • 使用jquery操作dom
  • nodejs自启动
  • nodejs 异步任务队列
  • python数值计算基础
  • webgl fbo
  • javascript基础笔记
  • 什么是重点群体
  • 香水与香精有啥不一样
  • 吉林省耕地面积有多少万亩
  • 收取广告费收入怎么入账
  • 交医保显示已申报怎么办
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设