首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
js函数从创建到执行
订阅
隐君子881
更多收藏集
微信扫码分享
微信
新浪微博
QQ
8篇文章 · 0订阅
理解Javascript的作用域和作用域链
总括: 本文讲解了Javascript的作用域,作用域类型,作用域链等概念以及Javascript是如何去建立作用域链并寻找变量的。 一花凋零,荒芜不了整个春天。 作用域和作用域链在Javascript和很多其它的编程语言中都是一种基础概念。但很多Javascript开发者并不…
3. 彻底搞懂javascript-函数创建
对上面代码的解释,都会提到静态作用域呀、函数的作用域跟创建时候的环境有关。但是我们看另一段代码: 显然,用不同方式创建的函数是有一些差异的。 针对这个两个问题,我们一个个来说。 像这样的定义函数的语句叫做函数声明。 对函数声明来说,函数声明和var声明一样,是在代码执行之前创建…
4. 彻底搞懂javascript-函数的运行
这几种调用方式,有什么不同呢?其实在真正进入函数代码运行之后是一样的,这几种调用方式的不同是在准备进入函数代码运行之前做的准备不一样。 就像大家去影院看电影,在进入影厅之前,有的同学买爆米花,有的同学买汉堡,有点同学买瓶奶茶,带在身上,进入影厅以后大家的流程就相同了,找排号,找…
5.彻底搞懂javascript-this
这篇就来聊聊这个ThisBinding。当前运行上下文的ThisBinding其实就是在当前运行上下文上执行代码里this的值。所以你在代码执行的时候遇到"this",就会来找当前运行上下文的这个ThisBinding作为this的值。那么,ThisBinding的值是多少呢?…
6.彻底搞懂javascript-作用域链
在弄明白什么是词法环境(Lexical Environments)、什么是运行上下文(Execution Context)、函数是被创建的过程以后,我们要来理解javascript的作用域就非常的容易。 我们解析一个变量,就是在当前运行运行上下文(Execution Conte…
7.彻底搞懂javascript-闭包
关于闭包的讨论的太多太多了,这里不讲晦涩难懂的概念。 大家会发现,对上次运行的函数时创建的词法环境的访问链路,断掉了,我们找不到了,无法再引用函数词法环境里的变量(上图中红色框框所示)。 答案是有的。 我们回忆一下:函数创建时会把创建函数时候的运行上下文的词法环境保存在函数对象…
2. 彻底搞懂javascript-运行上下文(Execution Context)
上一篇我们提到的变量会登记在一个叫Lexical Environments(词法环境)上面。我们说了Lexical Environments(词法环境)的组成部分,我们也知道GlobalEnvironment是一个Lexical Environments(词法环境),它的out…
1. 彻底搞懂javascript-词法环境(Lexical Environments)
针对这种代码中的现象,之前笔者也是查找各种帖子文章,在查看这些文章的时候,scope、词法环境、静态作用域、执行上下文等名词不断出现。从中大概知道,哦,js中变量是有提升的现象,哦,还有函数的作用域是在它创建的时候的词法环境决定的,哦,还有this是在运行是决定的不是在创建时决…