A-A+

javascript中var声明变量用法介绍

2016年01月13日 前端设计 暂无评论 阅读 4 views 次

在很多时候很多js程序员都可能不会用var来定义变量,但这样经常会出现一些致命的错误,下面我们来看实例。

var 语句

声明变量。

var variable1 [ = value1 ] [, variable2 [ = value2], ...]

参数

variable, variable2

被声明的变量的名字。

value, value2

赋给变量的初始化值。

说明:使用 var 语句来声明变量。这些变量可以在声明时或声明后在脚本中被赋值

一个关于var变量的问题

一个朋友问了一个js问题, 一段看不出有任何问题的代码, 在ie下报错:”object doesn’t support this property or method”.代码如下:

  1. function foo(obj) {     
  2. productTree = obj.toString();     
  3. document.getElementById('productTree').innerHTML = productTree;  
  4. }  

开始, 还以为错误是指obj的toString方法, 绕了半天弯路, 无果..后来,注意到变量名是productTree没有用var申明, 加上getElementById(‘productTree’)说明有个id为productTree的元素, 并且我们知道在IE下可以直接通过id获取DOM元素的引用, so~所以啊, 局部变量一定要用var申明, 不仅仅是因为不用var会成全局变量, 更因为在IE下, 有可能会出现这种, 让人很莫名的错误….

var变量实例1,代码如下:

  1. function test(){     
  2.   var1 = 2;   
  3.   alert(var1);        
  4. }     
  5. test();     
  6. alert(var1);   

这样可以显示为2:

  1. function test(){     
  2.   var var1 = 2;   
  3.   alert(var1);        
  4. }     
  5. test();     
  6. alert(var1);   

则为变量未定义错误

实例2:

我们还可以利用this来说明局部变量,this多用于函数内部,它永远指向调用他的那个对象,看看下面的例子就明白了,代码如下:

  1. var test={   
  2.    a:"test",   
  3.    msg:function(){   
  4.      a="1234";   
  5.      alert(this.a);   
  6.      var msg1= function(){   
  7. alert(this.a);   
  8.      }   
  9.      msg1();   
  10.    }   
  11. }   
  12. test.msg(); 这样会分别显示 "test" ,"1234".  

注意:

正如代数一样,JavaScript 变量用于保存值或表达式,可以给变量起一个简短名称,比如 x,或者更有描述性的名称,比如 length,JavaScript 变量也可以保存文本值,比如 carname="Volvo"。

JavaScript 变量名称的规则:

变量对大小写敏感(y 和 Y 是两个不同的变量)

变量必须以字母或下划线开始.

注释:由于 JavaScript 对大小写敏感,变量名也对大小写敏感.

标签:

给我留言