好吧,JS中,作用域、闭包和原型都说了,今天我们就谈谈this吧,this我更倾向于把它理解成为一个特殊变量,JS解释器在创建任何活动对象时(参考前面关于作用域的博文),都会创建一个this变量,并且将它指向一个对象(可编码干预)。下面以代码为例进行讲解。处于全局作用域下的this:this;/*w...
分类:
Web程序 时间:
2015-03-18 21:43:38
阅读次数:
158
学习动态性能表第12篇--V$DB_OBJECT_CACHE 2007.6.4 本视图提供对象在library cache(shared pool)中对象统计,提供比v$librarycache更多的细节,并且常用于找出shared pool中的活动对象。v$db_object_cache中的常用....
分类:
数据库 时间:
2015-03-13 14:18:02
阅读次数:
170
垃圾收集GC(Garbage Collection)是Java语言的核心技术之一,之前我们曾专门探讨过Java 7新增的垃圾回收器G1的新特性,但在JVM的内部运行机制上看,Java的垃圾回收原理与机制并未改变。垃圾收集的目的在于清除不再使用的对象。GC通过确定对象是否被活动对象引用来确定是否收集该...
分类:
编程语言 时间:
2015-03-05 18:34:45
阅读次数:
254
一、预解析 javascript 在执行前会进行类似“预解析”的操作:首先会创建一个在当前执行环境下的活动对象, 并将那些用 var 声明的变量、定义的函数设置为活动对象的属性, 但是此时这些变量的赋值都是 undefined二、解释执行 在javascript解释执行阶段, 遇到变量需要解析时.....
分类:
编程语言 时间:
2015-02-28 14:25:23
阅读次数:
102
原文:http://dmitrysoshnikov.com/ecmascript/javascript-the-core/对象原型链构造函数执行上下文栈执行上下文变量对象活动对象作用域链闭包This总结这篇文章是「深入ECMA-262-3」系列的一个概览和摘要。每个部分都包含了对应章节的链接,所以你...
分类:
编程语言 时间:
2015-02-27 01:26:29
阅读次数:
239
变量的作用域是在定义时决定的,不是在运行时活动对象是在运行时决定的?如果就创建一个对象,使用完毕就完了,就使用json字面量的方式如果对象被反复创建,反复使用,就使用自定义的构造函数方式优先级内部变量---高于---形式参数形式参数---高于---外部函数内部函数---高于---具体参数内部变量--...
分类:
编程语言 时间:
2015-02-16 12:57:05
阅读次数:
161
作用域链:
JavaScript的每个函数function都有自己的作用域,使用Active Object(简称AO)活动对象来保存,在相互嵌套的函数中形成了作用域链,如图:
作用域链就是从里到外的AO链
变量的寻找:
函数fn3中使用的变量,如在fn3作用域内寻找不到,则往外层fn2作用域寻找,以此类推,直到全局对象window
代码演示:
var c =...
分类:
编程语言 时间:
2015-02-09 16:05:37
阅读次数:
156
JavaScript代码自上而下执行,但是在js代码执行前,会首先进行词法分析,所以事实上,js运行要分为词法分析和执行两个阶段。
词法分析
词法分析主要分为3步:
第1步:分析形参
第2步:分析变量声明
第3步:分析函数声明
如果存在函数嵌套,则从外往内进行词法分析
具体步骤:...
分类:
编程语言 时间:
2015-02-09 16:03:33
阅读次数:
128
(一)作用域:首先,在javascript中的每个函数都是对象,是Funtion对象的一个实例,而Funtion中有一系列仅供javascript引擎存取的内部属性,其中一个便是[[scope]],它包含了一个函数被创建的作用域中对象的集合,这个集合就是函数的作用域链。当一个函数创建后,它的作用域链...
分类:
Web程序 时间:
2015-01-17 15:06:29
阅读次数:
231
js访问变量是从内到外,这条作用域链上面的每个活动变量也是从内到外的,比如一个函数,首先由arguments和函数内部声明的变量,然后是外层的能访问的变量,直至最后window全局对象,当出了这个函数,很熟内部声明的活动对象就会销毁,所以外部滴根本无法访问函数内部声明的对象的。之所以说js会把所有的变量提前也是针对不同的作用域的,在最外面,则是把所有的全局变量和全局的函数声明提前,在函数内部,则是...
分类:
Web程序 时间:
2014-12-23 19:36:40
阅读次数:
227