a defined -->a[[scope]]-->[0]:GO a doing -->a[[scope]]-->[0]:aAO [1]:GO b defined -->b[[scope]]-->[0]:aAO [1]:GO b doing -->d[[scope]]-->[0]: bAO [1]: ...
分类:
其他好文 时间:
2018-06-19 13:53:27
阅读次数:
137
变量对象的创建过程 在同一执行上下文中,变量对象的创建过程 将所有的函数声明放入变量对象中,如果属性已存在,则被新的覆盖 将所有的变量声明放入变量对象中,如果属性已存在,为了防止同名的函数被修改为undefined, 则会直接跳过,原属性值不会被修改,然后开始执行阶段代码的执行 this 在一个函数 ...
分类:
Web程序 时间:
2018-06-04 16:43:29
阅读次数:
155
普通函数中的this: 1. this总是代表它的直接调用者(js的this是执行上下文), 例如 obj.func ,那么func中的this就是obj 2.在默认情况(非严格模式下,未使用 'use strict'),没找到直接调用者,则this指的是 window (约定俗成) 3.在严格模式 ...
分类:
其他好文 时间:
2018-05-27 12:05:38
阅读次数:
162
相同点: 都能够改变方法的执行上下文(执行环境),将一个对象的方法交给另一个对象来执行,并且是立即执行 不同点: call方法从第二个参数开始可以接收任意个参数,每个参数会映射到相应位置的func的参数上,可以通过参数名调用,但是如果将所有的参数作为数组传入,它们会作为一个整体映射到func对应的第 ...
分类:
移动开发 时间:
2018-05-25 16:11:34
阅读次数:
210
执行上下文 1. 代码分类(位置) * 全局代码 * 函数(局部)代码 2. 全局执行上下文 * 在执行全局代码前将window确定为全局执行上下文 * 对全局数据进行预处理 * var定义的全局变量==>undefined, 添加为window的属性 * function声明的全局函数==>赋值( ...
分类:
其他好文 时间:
2018-05-20 14:13:49
阅读次数:
217
1.对变量提升的理解 2.说明 this 几种不同的使用场景 3.创建10个 <a>标签,点击的时候弹出来对应的序号 4.如何理解作用域 5.实际开发中闭包的应用 一、执行上下文 1.范围:一段<script>或者一个函数 (都会生成一个执行上下文) 2.全局:变量定义、函数声明 (一段<scrip ...
分类:
Web程序 时间:
2018-05-04 20:19:58
阅读次数:
191
一直一来,对JavaScript的代码执行顺序,大部分人都会认为 这里看起来似乎都很合理,但是 没有想象的那么简单 在看这一段代码 两次都会打印出foo2 这里涉及到两个问题 变量提升(之前写过) 函数提升 JavaScript引擎并不是一行一行分析 执行程序 而是一段一段的执行 ,当执行一段代码的 ...
分类:
编程语言 时间:
2018-04-28 01:27:23
阅读次数:
249
/* 总结: this 的指向: 1.this 的指向 是在执行上下文时才确定的, 并且确定后不可更改; 2.this 指向 “其执行上下文的环境对象”; “其执行上下文的环境对象” 判读依据如下: */ /* 浏览器环境下: 严格模式下: 1.全局上下文中的 this “其执行上下文的环境对象”为... ...
分类:
其他好文 时间:
2018-04-23 00:13:02
阅读次数:
132
以下内容针对ES5 一,先说下变量提升: 1,全局执行上下文中(一段script):变量定义,函数声明(执行之前) 以上代码等同于: 再看函数声明: 以上代码等同于: 备注:还是要规范编写函数。不推荐上述写法,要先定义后执行,增加可读性。 另外,注意函数声明和函数表达式的区别,函数声明可以在定义之前 ...
分类:
编程语言 时间:
2018-04-21 22:53:10
阅读次数:
159
内存空间:https://blog.csdn.net/pingfan592/article/details/55189622 执行上下文:https://blog.csdn.net/pingfan592/article/details/55189804 变量对象详解:https://blog.csd ...
分类:
Web程序 时间:
2018-04-18 19:14:50
阅读次数:
238