变量作用域

一个变量的作用域(scope)是指程序源代码中定义的这个变量的区域。全局变量拥有全局作用域,在javascript代码中的任何地方都可以是有定义。然而在函数体内生命的变量只在函数体内有定义,它们是局部变量,作用域是局部性的。函数参数也是局部变量,它们只在函数体内用定义。

在函数体内,局部变量的优先级高于同名的全局变量。这时候全局变量就会被局部变量覆盖。在生命与全局变量同名的局部变量时一定要在生命语句前加 var,不然会默认是修改全局变量。函数定义是可以嵌套的,由于每个函数都有它自己的作用域,那么会出现几个局部作用域嵌套的情况。

javascript中的函数作用域是指在函数内声明的变量在函数体内始终是可见的,这意味着在变量声明之前甚至可以使用。

var scopr="global";

function f(){

  console.log(scope);  //输出"undefined",而不是"global"

  var scope="local";  //变量在这里赋初始值,当变量本身是在函数体内任何地方都有定义的

  console.log(scope);  //输出"local"

}

 

另外补充一点:在函数作用域内的变量在函数执行完成后就会进行回收,此时在控制台输入变量名知识会报未定义的错误

转载于:https://www.cnblogs.com/xiaokk06/p/4967866.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值