0 Comments

谨慎使用运算符(2)

发布于:2012-12-03  |   作者:广州网站建设  |   已聚集:人围观

++和--运算符只能够作用于变量、数组元素或对象属性。下面的用法是错误的。


  1. 4++; 

 

正确的用法如下:

  1. var n = 4;  
  2. n++; 

 

++和--运算符的位置不同所得运算结果也不同。例如,下面的递增运算符是先执行赋值运算,然后再执行递加运算。

  1. var n = 4;  
  2. n++;    // 4 

 

而下面的递增运算符是先执行递加运算,再进行赋值运算。

  1. var n = 4;  
  2. ++n; 

3.小心逗号运算符

逗号在JavaScript语言中表示连续运算,并返回最后运算的结果。例如,在下面这个示例中,JavaScript先运算第一个数值直接量,再运算第二个数值直接量,然后运算第三个数值直接量,最后运算第四个数值直接量,并返回最后一个运算值4。


  1. var a = ( 1, 2, 3, 4);  
  2. alert(a);               //4 

 

再如:

  1. a = 1b = 2c = 3

 

等价于:

  1. a = 1;  
  2. b = 2;  
  3. c = 3

 

作为运算符,逗号一般用在特殊环境中,即在只允许出现一个句子的地方,把几个不同的表达式句子合并成一个长句。在JavaScript实际开发中,逗号运算符常与for循环语句联合使用。例如,在下面这个简单的for循环结构中,通过连续的运算符在参数表达式中运算多个表达式,以实现传递或运算多个变量或表达式。

  1. for(var a = 10 , b = 0; a > b; a++ , b+=2){  
  2.     document.write("a = " + a +"  b = " + b + "<br>");  

 

逗号运算符比较“怪异”,稍不留心就会出错。例如,在下面这个简单的示例中,变量a的返回值为1,而不是连续运算后的返回值4。

  1. a = 1, 2, 3, 4;  
  2. alert(a);           //1 

 

第一个数值1先赋值给变量a,然后a再参与连续运算,整个句子的返回值为4,而变量a的返回值为1,代码演示如下:

  1. alert((a = 1, 2, 3, 4));        //4  
  2. alert(a = (1, 2, 3, 4));        //4
标签:
飞机