JavaScript函数中的作用域

JavaScript之函数作用域
一丶我们公司里在做项目时常会有一个项目好几个人一起做的情况,所以变量的引用就变得尤为重要常用的有局部变量和全局变量
var a = 2;
function foo() { // <– 添加这一行
var a = 3;
console.log( a ); // 3
} // <– 以及这一行
foo(); // <– 以及这一行
console.log( a ); // 2

该函数中var a=2作用于全局,var a=3仅仅作用于foo函数 ,我们在使用全局变量时要引起注意的是该变量是否还影响到其他成员函数。
二丶为避免会影响到其他成员函数我们经常采用的方式除对变量作用域进行严格控制外,还有直接讲函数当做函数表达式进行处理
先上代码:
var a = 2;
(function foo(){ // <– 添加这一行
var a = 3;
console.log( a ); // 3
})(); // <– 以及这一行
console.log( a );
这段代码我们可以看出明显不同是function前面加了一个括号,千万不要小看这个简单的括号,正是因为括号的作用我们才可以直接讲函数当做表达式来使用,表达式有一个比较重要的特点,那就是当程序执行到该表达式时表达式被直接运算,所以这种写法能让函数在不需要被调用的前提下直接执行,这样操作可完美使用局部变量,使内容高度独立

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值