javascript中的作用域scope介绍


Posted in Javascript onDecember 28, 2010

而在javascript中,变量的作用域是按函数来划分的——变量在某个函数范围内有效。比如:

var f = false; 
if(true) { var f = true; } //此时f位于if内,也就是块内,等价于还是全局范围内 
alert(f) //所以,结果为true

再如下例:

var f = false; 
function test() { 
var f = true; //这是函数内定义的变量,只在函数内部有效,函数执行完毕后,该变量将被释放 
} 
test(); 
alert(f) //结果为false,并没有因为test()的执行而改变

再有,在javascript中声明的全局变量都可以看作是window对象的一个属性,比如:

var test = "this is a test"; 
alert(window.test == test) //结果为true

这正好验证了上边所说的全局变量也是window对象的属性

最后,我们来看
[code]
function test() {

f = false;
}
test();
alert(f) //结果为false
[html]

那么,如果在声明变量时,如果不添加var(隐式声明),也被看作了全局变量了,尽管它是定义在函数之内的。

Javascript 相关文章推荐
Javascript 布尔型分析
Dec 22 Javascript
JS 获取span标签中的值的代码 支持ie与firefox
Aug 24 Javascript
javascript中substr,substring,slice.splice的区别说明
Nov 25 Javascript
javascript字符串与数组转换汇总
May 26 Javascript
javascript图片预加载实例分析
Jul 16 Javascript
详解webpack es6 to es5支持配置
May 04 Javascript
vue过渡和animate.css结合使用详解
Jun 14 Javascript
关于Google发布的JavaScript代码规范你要知道哪些
Apr 04 Javascript
使用Angular CLI快速创建Angular项目的一些基本概念和写法小结
Apr 22 Javascript
JS实现li标签的删除
Apr 12 Javascript
详解JavaScript的内存空间、赋值和深浅拷贝
Apr 17 Javascript
vue实现简易音乐播放器
Aug 14 Vue.js
原生Js实现按的数据源均分时间点幻灯片效果(已封装)
Dec 28 #Javascript
按给定几率进行随机抽取的js代码
Dec 28 #Javascript
围观tangram js库
Dec 28 #Javascript
让你的博文自动带上缩址的实现代码,方便发到微博客上
Dec 28 #Javascript
JS弹出对话框返回值代码(asp.net后台)
Dec 28 #Javascript
jQuery Tips 为AJAX回调函数传递额外参数的方法
Dec 28 #Javascript
JavaScript去掉空格的方法集合
Dec 28 #Javascript
You might like
php中的观察者模式
2010/03/24 PHP
php设计模式 Observer(观察者模式)
2011/06/26 PHP
PHP预定义变量9大超全局数组用法详解
2016/04/23 PHP
php获取给定日期相差天数的方法分析
2017/02/20 PHP
PHP 实现 WebSocket 协议原理与应用详解
2020/04/22 PHP
javascript Event对象详解及使用示例
2013/11/22 Javascript
js实现文字跟随鼠标移动而移动的方法
2015/02/28 Javascript
asp.net中oracle 存储过程(图文)
2015/08/12 Javascript
用window.onerror捕获并上报Js错误的方法
2016/01/27 Javascript
AngularJS基础 ng-src 指令简单示例
2016/08/03 Javascript
AngularJS基础 ng-value 指令简单示例
2016/08/03 Javascript
JS获取年月日时分秒的方法分析
2016/11/28 Javascript
vue.js开发环境搭建教程
2017/05/04 Javascript
关于 angularJS的一些用法
2017/11/29 Javascript
用vue 实现手机触屏滑动功能
2020/05/28 Javascript
[55:03]LGD vs EG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
[49:12]完美世界DOTA2联赛PWL S2 Magma vs GXR 第二场 11.29
2020/12/02 DOTA
python多线程编程方式分析示例详解
2013/12/06 Python
Python中的数学运算操作符使用进阶
2016/06/20 Python
Python selenium 父子、兄弟、相邻节点定位方式详解
2016/09/15 Python
python生成密码字典的方法
2018/07/06 Python
python 实现求解字符串集的最长公共前缀方法
2018/07/20 Python
python从子线程中获得返回值的方法
2019/01/30 Python
Python3模拟curl发送post请求操作示例
2019/05/03 Python
对Python函数设计规范详解
2019/07/19 Python
keras打印loss对权重的导数方式
2020/06/10 Python
Python抓包并解析json爬虫的完整实例代码
2020/11/03 Python
突袭HTML5之Javascript API扩展4—拖拽(Drag/Drop)概述
2013/01/31 HTML / CSS
e路東瀛(JAPANiCAN)香港:日本旅游、日本酒店和温泉旅馆预订
2018/11/21 全球购物
软件测试英文面试题
2012/10/14 面试题
材料采购员岗位职责
2013/12/17 职场文书
拖鞋店创业计划书
2014/01/15 职场文书
幼儿园庆元旦主持词
2015/07/06 职场文书
大学入学感言
2015/08/01 职场文书
励志正能量20句:送给所有为梦想拼搏的人
2019/11/11 职场文书
Win11安全功能升级:内置防网络钓鱼功能
2022/04/08 数码科技