js局部变量和全局变量详解

javascript是一门弱类型语言,它的变量可以用来保存任何类型的数据,这个特点在java中是看不到的。定义变量的时候要使用var操作符( var是一个关键字),后面再加上一个变量名,格式如下:
var i;	//var:关键字	i:变量

上面的代码就是定义了一个变量,但是没有赋值,该变量可以用来保存任何类型的值。但是要注意一下, 像上面这样定义一个变量没有赋值的情况下,它会保存一个特殊的值——undefined。javascript也可以像其它语言一样,在定义变量的时候直接初始化数值,如下写法。
var i = 11;

在javascript中也可以像java,c一样,一条语句定义多个变量,变量之间用逗号分开,赋值和不赋值均可,语法如下。
var i = 11, i2 = true, i3 = "javascript";

在javascript中还有一个和java语言不一样的地方,就拿变量来说,它一开始就给i赋值了字数类型i,但 它还可以在修改变量值的同时修改值的类型,但是这种写法是不推荐的。这种写法在java中是看不到的,如下写法。
var i = 11;
alert(typeof(i));		//number
i = "javascript";
alert(typeof(i));		//string

上面的代码中一开始定了一个number类型的11,但后面又将它修改成了string字符串类型。
有一点我这里要强调一下,就是在 一个函数数中用var定义了一个变量,在函数销毁的时候这个变量也会相对就的被销毁掉。
function test(){
var i = 11;
}
test();
alert(i);	//error

但是 如果是一个全局变量的话,就不会随着函数的销毁而销毁,而且可以在函数外的地方也可以被访问的到。那怎么来定义全局变量呢?直接把var关键字去掉就是全局变量了,语法如下。
function test(){
	i = 11;
}
test();
alert(i);

虽然上面的语名没有报错,但这种全部变量的写法也不推荐使用,因为在局部作用域中定义的全局变量很验维护。



  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值