JavaScript中var关键字的使用详解
作用
声明作用;如声明个变量。
语法
var c = 1;
省略var
在javascript中,若省略var关键字而直接赋值,那么这个变量为全局变量,哪怕是在function里定义的。
<script type="text/javascript">
function Define() {
a = 2;
}
function Hello() {
alert(a);
}
</script>
如代码所示,运行函数Define()后,变量a声明为全局变量。在Hello()函数中可以引用变量a。
更具体的示例
我们都知道 JavaScript 中的var关键字是用来申明变量的,但是如果不用这个关键字而直接写出变量名,然后赋值给它,JavaScript 也并不会报错,它会自动申明这个变量。难道说 JavaScript 中的var是个多余的东西吗?显然不是!
请看下面这段代码:
str1 = 'Hello JavaScript!';
function fun1() {
str1 = 'Hello Java!';
}
fun1();
alert(str1);
// 弹出 Hello Java!
可以看到,在函数 fun1 被调用后,str1 的值在函数内被改变了。
再将上面的代码稍作修改:
str1 = 'Hello JavaScript!';
function fun1() {
var str1 = 'Hello Java!';
}
fun1();
alert(str1);
// 弹出 Hello JavaScript!
看到没有,str1 的值并没有被函数 fun1 改变。
显然,var关键字影响了变量的作用域。
函数外部:变量不管是否用了var申明,都是全局变量。
函数内部:变量如果没有使用var关键字申明,那它就是全局变量,只有用var关键字申明了,才是局部变量。
结论
为了避免潜在的风险,务必使用var关键字来申明变量。
相关文章
温故知新——JavaScript中的字符串连接问题最全总结(推荐)
这篇文章主要介绍了JS中的字符串连接问题,ECMAScript 中最常见的一个问题是字符串连接的性能。在调用 join() 方法时才会发生连接操作,具体操作步骤大家可查看下文的详细讲解,感兴趣的小伙伴们可以参考一下。2017-08-08
Javascript基础_简单比较undefined和null 值
下面小编就为大家带来一篇Javascript基础_简单比较undefined和null 值。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2016-06-06
详解JavaScript中数组和字符串的lastIndexOf()方法使用
这篇文章主要介绍了详解JavaScript中数组和字符串的lastIndexOf()方法使用,文中特别提及了IE8的兼容问题以及for in的使用问题,需要的朋友可以参考下2016-03-03
document.getElementBy("id")与$("#id")有什么区
有朋友问document.getElementBy("id")与$("#id")的区别,其实第一个就是js中获取对象的方法, 第二个是通过自定义函数方便调用,而第三个是jquery中获取id对象的方法2013-09-09
JavaScript中getUTCSeconds()方法的使用详解
这篇文章主要介绍了JavaScript中getUTCSeconds()方法的使用详解,是JS入门学习中的基础知识,需要的朋友可以参考下2015-06-06


最新评论