一. 变量作用域 1)全局变量 在全局环境下声明的变量被视为全局变量。 在没有使用var进行声明的时候,变量就被定义为全局变量。在ES5的严格模式下,如果变量没有使用var来声明是会报错的。 2)局部变量 在函数体内部声明的变量被视为局部变量。其中涉及到js中的函数作用域问题。 二. 函数作用域 因... ...
分类:
其他好文 时间:
2016-05-05 00:15:25
阅读次数:
191
Closure 《JavaScript高级程序设计》定义闭包:闭包是指有权访问另一个函数作用域中的变量的函数。 创建闭包的常见方式,就是在一个函数内部创建另一个函数。 然而,闭包总是和作用域链联系在一起的。当某个函数被调用时,会创建一个执行环境及相应的作用域链。 几个概念: 执行环境:定义了变量或函 ...
分类:
编程语言 时间:
2016-04-27 14:16:43
阅读次数:
213
一直对Js的作用域有点迷糊,今天偶然读到JavaScript权威指南,立马被吸引住了,写的真不错。我看的是第六版本,相当的厚,大概1000多页,Js博大精深,要熟悉精通需要大毅力大功夫。 一:函数作用域 先看一小段代码: [javascript] view plain copy var scope= ...
分类:
Web程序 时间:
2016-04-26 09:41:49
阅读次数:
253
函数 一、函数的声明 函数的声明关键字是function,一个函数是有关键字、函数名、参数(实际参数,形式参数)、和返回值构成。 函数类型 函数的重复声明 形式参数和retrun 立即函数 一等公民 函数名的提升(变量提升) 函数的属性和方法 函数作用域 函数本身的作用域 参数 传递方式 ...
分类:
其他好文 时间:
2016-04-25 06:31:18
阅读次数:
173
JavaScript巩固与加强一 第一天:JavaScript回顾+函数+作用域链+script代码执行+数组 两链:作用域链+原型链 一包:闭包 第二天:事件编程 第三天和第四天:面向对象+贪吃蛇游戏开发 第五天:正则表达式 一、简介 1、为什么需要JavaScript? 2、什么是JavaScr... ...
分类:
Web程序 时间:
2016-04-23 01:30:12
阅读次数:
293
函数中的作用域搜索顺序:L E G B L local,局部名字空间,即局部变量,在函数内部找 E enclosing,直接外围空间, G global,全局名字空间,即全局变量 B builtin,内建名字空间 ...
分类:
其他好文 时间:
2016-04-20 00:35:47
阅读次数:
136
在理解闭包前理解JavaScript的作用域是有必要的,如果有兴趣,请移步"对JavaScript作用域的认识" 什么是闭包 闭包就是指有权访问另一个函数作用域中变量的函数,通俗点讲闭包就是能够读取其他函数变量的函数。创建闭包的常见方式,就是在一个函数内部创建另一个函数。 上述函数fn2就是一个闭包 ...
分类:
其他好文 时间:
2016-04-16 23:10:01
阅读次数:
287
content: 1.函数表达式的特征 2.使用函数实现递归 3.使用闭包定义私有变量 新概念:闭包、私有变量、递归 定义函数: 1.声明函数 2.函数表达式: 1) 常见的方式 闭包和匿名函数的区别 闭包:有权访问另一个函数作用域中的变量的函数; 1.闭包是函数 2.有权访问另一个函数作用域 创建 ...
分类:
其他好文 时间:
2016-04-16 16:48:03
阅读次数:
111
废话不说;先来段代码;varscope=‘global‘;
functiontest(){
alert(scope);//输出undefine;而不是global
varscope=‘local‘;
alert(scope);//输出local
}
test();脑算下;你可能会认为第一alert会输出global;但是事实上第一个alert输出的是undefined;这是怎么回事呢?要探讨..
分类:
编程语言 时间:
2016-04-10 01:20:14
阅读次数:
267
废话不说;先来段代码; 脑算下;你可能会认为第一alert会输出global; 但是事实上第一个alert输出的是undefined; 这是怎么回事呢? 要探讨这个问题首先要解释下两个概念; 1:函数作用域: 函数作用域指的是函数内声明的变量只在此函数内有效; 2:声明提前: 声明提前的意思是说在函 ...
分类:
编程语言 时间:
2016-04-10 00:51:25
阅读次数:
145