ECMAScript学习笔记SJ(x)---- this,__proto__,prototype
什么是执行期上下文??首先,按照ECMAScript的规范,一共有三种类型的代码,全局代码(游离于任何函数体之外),函数代码,以及eval代码(eval接受字符串)。全局上下文仅有一个,函数上下文和eval上下文则可能有多个。引擎在调用一个函数时,进入该函数上下文,并执行函数体,函数体内可以有递归,也可以调用其他函数(进入另外一个上下文,此时调用者被阻塞,直至返回)。调用eval会有类似的情况。
??执行期上下文对象是以栈(先进后出)存储的,全局上下文对象第一个进栈,然后函数上下文和eval上下文对象依次进栈。 什么是this
什么是作用域链scope
inner上下文对象的作用域链就是 outterContext->globalContext; 对象的属性链??与作用域链相类似,对象的fields也是使用的链式查找方式,当在当前对象的fields中查找不到匹配的field时,就会从对象的__proto__属性的fields中查找匹配;如果__proto__的fields中也找不到匹配的时,则会继续搜索__proto__.__proto__,以此纵向查找,直到匹配或__proto__为null; __proto__是什么?__proto__是原形对象,对Function对象来说默认情况下__proto__就是声明时创建的第一个实例对象。 new都做了什么先定义一个函数对象 参考
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |