首页IT科技js的闭包详解(JavaScript知识总结 闭包篇)

js的闭包详解(JavaScript知识总结 闭包篇)

时间2025-09-19 08:25:38分类IT科技浏览5976
导读:这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助...

这里给大家分享我在网上总结出来的一些知识               ,希望对大家有所帮助

3. 创建执行上下文

创建执行上下文有两个阶段:创建阶段执行阶段

1)创建阶段

(1)this绑定

在全局执行上下文中                        ,this指向全局对象(window对象) 在函数执行上下文中        ,this指向取决于函数如何调用               。如果它被一个引用对象调用               ,那么 this 会被设置成那个对象                       ,否则 this 的值被设置为全局对象或者 undefined

(2)创建词法环境组件

词法环境是一种有标识符——变量映射的数据结构        ,标识符是指变量/函数名        ,变量是对实际对象或原始数据的引用                        。 词法环境的内部有两个组件:加粗样式:环境记录器:用来储存变量个函数声明的实际位置外部环境的引用:可以访问父级作用域

(3)创建变量环境组件

变量环境也是一个词法环境                       ,其环境记录器持有变量声明语句在执行上下文中创建的绑定关系        。

2)执行阶段

此阶段会完成对变量的分配                ,最后执行完代码               。

简单来说执行上下文就是指:

在执行一点JS代码之前        ,需要先解析代码                       。解析的时候会先创建一个全局执行上下文环境                       ,先把代码中即将执行的变量               、函数声明都拿出来                ,变量先赋值为undefined,函数先声明好可使用        。这一步执行完了                       ,才开始正式的执行程序        。

在一个函数执行之前                        ,也会创建一个函数执行上下文环境,跟全局执行上下文类似               ,不过函数执行上下文会多出this                        、arguments和函数的参数                       。

全局上下文:变量定义                        ,函数声明 函数上下文:变量定义        ,函数声明               ,this                       ,arguments

如果对您有所帮助        ,欢迎您点个关注        ,我会定时更新技术文档                       ,大家一起讨论学习                ,一起进步                。

声明:本站所有文章        ,如无特殊说明或标注                       ,均为本站原创发布        。任何个人或组织                ,在未征得本站同意时,禁止复制        、盗用               、采集                       、发布本站内容到任何网站        、书籍等各类媒体平台                       。如若本站内容侵犯了原著者的合法权益                       ,可联系我们进行处理                。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
windows聚焦无法显示 为灰色(无法设置windows聚焦)