位置: 编程技术 - 正文

js作用域及作用域链概念理解及使用(js有哪些作用域,分别是什么意思)

编辑:rootadmin

要理解变量的作用域范围就得先理解作用域链 用var关键字声明一个变量时,就是为该变量所在的对象添加了一个属性。 作用域链:由于js的变量都是对象的属性,而该对象可能又是其它对象的属性,而所有的对象都是window对象的属性,所以这些对象的关系可以看作是一条链 链头就是变量所处的对象,链尾就是window对象 看下面的代码: js中函数也是对象,所以变量a所在的对象是t,t又在window对象中,所以a的作用域链如下 t--window 那么b所以在的对象即t2,t2又包含在t中,t又在window对象,所以b的作用域链如下 t2--t--window 明白了作用域链下面就开始变量的作用域分析了 1 javascript 没有var的变量都为全局变量,且为window对象的属性 2 函数内(函数内的函数除外)定义的变量在整个函数内部都有效 3 函数内部的变量取代全局同名变量 4 没块的作用域 以下内容来自读网上博客的总结,当笔记使用,只记重点,同时非常感谢乐于分享的博主们,是你们让我站在了巨人的肩旁上! 1、 以上代码片断是我们jser经常见到的写法,是传说中的闭包。 众所周知:调用 temp();会弹出 “ test”;该过程可以有以下三条理论作为依据来解释: 1)js 作用域只和函数的界定符相关,函数与函数的嵌套形成了作用域链; 2)作用域链的创建规则是复制上一层环境的作用域链,并将指向本环境变量对象的指针放到链首; 3)在Javascript中,如果一个对象不再被引用,那么这个对象就会被GC回收。如果两个对象互相引用,而不再被第3者所引用,那么这两个互相引用的对象也会被回收。 如果看了以上3条还不明白,可看接下来结合理论对代码的详细解释: 首先外层函数执行完,被销毁;但是外层函数的作用域链被复制到内层函数的作用域链里,组成内层函数的作用域链的一部分,记住是复制,不是引用(依据第2条),所以内层函数仍然可以访问到 name;由于 返回的内层函数被 temp 引用,所以当外层函数执行完被销毁后,内层函数虽然作为外层函数的一部分,但是依然存在,正如第3条依据那样,它被第三者引用了;传说中的闭包也就是这个理

推荐整理分享js作用域及作用域链概念理解及使用(js有哪些作用域,分别是什么意思),希望有所帮助,仅作参考,欢迎阅读内容。

js作用域及作用域链概念理解及使用(js有哪些作用域,分别是什么意思)

文章相关热门搜索词:js作用域有哪些,js作用域作用优点缺点,js作用域及作用域的区别,js作用域作用优点缺点,js的作用域和作用域链,js的作用域和作用域链,js作用域及作用域的区别,js作用域及作用域的区别,内容如对您有帮助,希望把文章链接给更多的朋友!

JS 模态对话框和非模态对话框操作技巧汇总 模态窗口javascript技巧汇总(传值、打开、刷新)1、要弹出的页面中,一定要保证head/head标签间有basetarget=_self,否则会弹出的模态窗口上,点击按钮时

JS中 用户登录系统的解决办法 当用户输入pwd密码是就跳到第二个页面,4秒后,自动跳转到第三个页面login.htmlhtmlheadmetahttp-equiv="Content-Type"content="text/html;charset=utf-8"scripttype="text/javasc

简易js代码实现计算器操作 htmlheadtitleJS版计算器/titlelinkrel="stylesheet"type="text/css"href=""metahttp-equiv="content-type"content="text/html;charset=utf-8"!--js代码可以放置在任意位置,按照先后顺序依

标签: js有哪些作用域,分别是什么意思

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

上一篇:在Javascript中 声明时用"var"与不用"var"的区别(在JavaScript中声明变量的关键词有)

下一篇:JS 模态对话框和非模态对话框操作技巧汇总(js 模态对话框和对话框)

  • 增值税发票综合服务平台错误代码35
  • 如何查询公司是否是小微企业
  • 弹性预算列表式如何计算
  • 国税地税合并后叫什么名称
  • 企业所得税滞纳金从什么时候开始算
  • 工业企业新产品的特点
  • 无形资产没有了
  • 建安企业增值税预缴
  • 合并利润表抵消事项包括
  • 事业单位收到增资款
  • 什么发票可以用来抵税
  • 一般纳税人选择简易计税进项税可以抵扣吗
  • 普通发票负数发票可以作废吗
  • 开票资料填写
  • 工会经费电子税务局找不见了
  • 退了货的发票还能用吗
  • 存货跌价准备计提原则
  • 事业单位财政应返还额度包括
  • 个人出租住房需要交城镇土地使用税吗
  • bios升级失败后如何恢复
  • cpu性能天梯图2023年3月
  • 洗牙的利和弊
  • win10远程桌面连接不成功
  • xp系统可以安装cad吗
  • 跨年度费用应如何计算
  • 公司试乘试驾车卖掉在增值税哪个模块里开具
  • 深度学习模型精度fp16和fp32
  • 托收账款属于什么会计科目
  • 今夕七夕
  • yii2中LinkPager增加总页数和总记录数的实例
  • yolov3训练
  • 当月进项税额转出当月申报吗
  • htmlcss导航栏网页
  • ps命令显示进程状态
  • php和mysql的软件怎么部署
  • electron开发的应用程序
  • 日常费用报销表格
  • 网上学电脑哪个软件好
  • 如何在控制台打印debug里的数据
  • linux mongodb配置文件
  • 本年利润有余额是什么意思
  • 摄影行业开票
  • 减免税款的会计分录当月做吗
  • 哪些合同必须签订书面合同
  • mysql 5.7.1
  • 公司的资本公积金
  • 企业代扣代缴个税
  • 只有发票没有银行回单怎么做账
  • 出资注意事项有哪些内容
  • 待处理财产损益的账务处理
  • 毁损的原材料怎么处理
  • 库存结转成本如何计算
  • 福利费与工会经费使用区别
  • 客户从公司借钱怎么拒绝
  • 多余备用金记账会计分录
  • 员工预支工资可以从工资里扣吗
  • 会计凭证要保存多少年企业注销
  • 财务章和公章的样式区别图片
  • 会计成本核算方法有几种类型
  • win8更新到win8.1
  • win10回收此电脑
  • linux中使用最多的命令
  • OS X10.10.5 Yosemite beta2发布 os x10.10.5yosemite beta2官网下载地址
  • win7旗舰版用户
  • macosmajove
  • windows8使用技巧
  • win7怎么录屏为什么不是视频
  • unity Toggle Groud
  • js一维数组转树结构
  • 快速掌握押韵技巧
  • JavaScript中的变量名不区分大小写
  • dota2 服务器ip地址
  • nodejs indexof
  • unity system
  • javascript的
  • javascript $符号
  • js发送请求的几种方式
  • 济南高新发展公告
  • 大管家多少集
  • 劳务报酬预缴税率表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设