问题的提出首先看一个例子:var name = 'laruence';function echo() {alert(name);var name = 'eve';alert(name);alert(age);}echo();运行结果是什么呢?上面的问题, 我相信会有很多人会认为是:laruencee...
分类:
编程语言 时间:
2014-11-14 10:27:55
阅读次数:
322
javascript闭包(Closure) 闭包官方的解释:闭包指的是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。 要理解闭包,首先理解两点:变量的作用域以及作用域链, 例: var color = "blue"; fun...
分类:
编程语言 时间:
2014-11-13 18:36:40
阅读次数:
185
闭包,在一开始接触JavaScript的时候就听说过。首先明确一点,它理解起来确实不复杂,而且它也非常好用。那我们去理解闭包之前,要有什么基础呢?我个人认为最重要的便是作用域(lexical scope),如果对作用域和作用域链不理解的同学最好自己先去学一学,再回过头来,理解闭包,就更加轻松。 .....
分类:
编程语言 时间:
2014-11-12 13:38:47
阅读次数:
251
一、关于块级作用域 说到JavaScript的变量作用域,与咱们平时使用的类C语言不同.例如C#中下面代码:static void Main(string[] args){ if(true) { int num = 10; } System.Console.WriteLine(num);}这段代码如...
分类:
编程语言 时间:
2014-11-11 18:54:07
阅读次数:
237
一般来说,作用域链是针对变量的,js里面大的范围上来说,只有两种作用域,全局作用域和函数内部作用域,如果函数1里面又定义了函数2(一般都是匿名函数), 那么就有了这么一个作用域链全局作用域==>函数1作用域==>函数2作用域;特点是函数1里面可以直接使用全局作用域的变量,函数2里面可以直接使用全局作...
分类:
编程语言 时间:
2014-11-09 13:47:05
阅读次数:
142
http://www.nowamagic.net/librarys/veda/detail/1707前面介绍了作用域链和变量对象,现在再讲闭包就容易理解了。闭包其实大家都已经谈烂了。尽管如此,这里还是要试着从理论角度来讨论下闭包,看看ECMAScript中的闭包内部究竟是如何工作的。在直接讨论ECM...
分类:
编程语言 时间:
2014-11-09 11:15:22
阅读次数:
387
JavaScript中的 变量、作用域链、执行上下文leeonwrites on 26 Feb 2014Intro之前一直在前端使用JavaScript,主要是操作DOM实现网页中特定的效果。接触Node.js后,JavaScript就开始在Server和Desktop上发挥作用。本文梳理一下Jav...
分类:
Web程序 时间:
2014-11-08 11:57:00
阅读次数:
284
在学习JavaScript的变量作用域之前,我们应当明确几点:JavaScript的变量作用域是基于其特有的作用域链的。JavaScript没有块级作用域。咸宁市中心小学函数中声明的变量在整个函数中都有定义。1、JavaScript的作用域链首先看下下面这段代码:观察alert(rain);这句代码...
分类:
编程语言 时间:
2014-11-03 20:49:45
阅读次数:
236
首先我们来看两个js中的代码:
var c=5;
function t1(){
var d=6
function t2(){
var e=7
alert(c+d+e);
}
t2();
}
t1();
这个你很快会得出结论:18;
function t1(){
var d;
function t2(){
d=5...
分类:
Web程序 时间:
2014-11-02 22:37:04
阅读次数:
276
简要概述: 《C和指针》第三章对数据进行了描述。 其中主要讲解了---变量的三个属性:作用域、链接属性和存储类型。 这三个属性决定了该变量在“什么地方可以使用”以及“该变量的值能够保持多久”。总结作用域:1、文件作用域、代码块作用域、原型作用域和函数作用域 文件作用域:在代码块之外声明的标识...
分类:
其他好文 时间:
2014-11-02 10:37:06
阅读次数:
254