变量作用域
2015-11-16 00:12
211 查看
一个变量的作用域(scope)是指程序源代码中定义的这个变量的区域。全局变量拥有全局作用域,在javascript代码中的任何地方都可以是有定义。然而在函数体内生命的变量只在函数体内有定义,它们是局部变量,作用域是局部性的。函数参数也是局部变量,它们只在函数体内用定义。
在函数体内,局部变量的优先级高于同名的全局变量。这时候全局变量就会被局部变量覆盖。在生命与全局变量同名的局部变量时一定要在生命语句前加 var,不然会默认是修改全局变量。函数定义是可以嵌套的,由于每个函数都有它自己的作用域,那么会出现几个局部作用域嵌套的情况。
javascript中的函数作用域是指在函数内声明的变量在函数体内始终是可见的,这意味着在变量声明之前甚至可以使用。
var scopr="global";
function f(){
console.log(scope); //输出"undefined",而不是"global"
var scope="local"; //变量在这里赋初始值,当变量本身是在函数体内任何地方都有定义的
console.log(scope); //输出"local"
}
另外补充一点:在函数作用域内的变量在函数执行完成后就会进行回收,此时在控制台输入变量名知识会报未定义的错误
在函数体内,局部变量的优先级高于同名的全局变量。这时候全局变量就会被局部变量覆盖。在生命与全局变量同名的局部变量时一定要在生命语句前加 var,不然会默认是修改全局变量。函数定义是可以嵌套的,由于每个函数都有它自己的作用域,那么会出现几个局部作用域嵌套的情况。
javascript中的函数作用域是指在函数内声明的变量在函数体内始终是可见的,这意味着在变量声明之前甚至可以使用。
var scopr="global";
function f(){
console.log(scope); //输出"undefined",而不是"global"
var scope="local"; //变量在这里赋初始值,当变量本身是在函数体内任何地方都有定义的
console.log(scope); //输出"local"
}
另外补充一点:在函数作用域内的变量在函数执行完成后就会进行回收,此时在控制台输入变量名知识会报未定义的错误
相关文章推荐
- 根据网址把图片下载到服务器C#代码
- 20151115小问题
- 2440裸机编程之四 外部中断
- Unity5 关于修改组件GameObject的Color与mainTexture的探索
- IOS开学第一天
- Android实践项目汇报(二)
- 关于正则表达式的总结
- 顺序栈的操作实现_C语言
- JAVA 复习(Think In Java, 4th) -- File I/O -- part 2
- DRBD基础
- Java 单链表
- 给亲爱的写的关于爱情的程序--CrazyChao(论IT男的爱情)
- 根据key删除数组中指定的元素
- Let's-Bug修复日志
- Spring的定时任务
- 从菜鸟走向大数据高手
- opencv打开图片保存图片
- apue学习第一课,环境安装
- android开发步步为营之83:android图片处理技术之二(通过Matrix移动缩放旋转错切)
- python入门