码迷,mamicode.com
首页 > 编程语言 > 详细

JavaScript 逗号运算符

时间:2020-01-27 21:58:27      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:知识点   它的   inf   ora   web   参考   多个   javascrip   tps   

   思考  

关于逗号选择器并不是很重要的一个知识点,但是我在写这篇博客查阅资料的时候发现一个很奇怪的问题。

在《JavaScript高级程序设计》这本书中说:逗号选择器多用于声明多个变量,除此之外还可以用于赋值。

在 MDN中并不认为 var 语句中的逗号属于逗号操作符,而将其看作是 var 语句中的特殊符号。

姑且认为var中的逗号可以理解为逗号分隔,不是逗号运算符。                         

 

使用逗号运算符可以在一条语句中执行多个操作。

在《JavaScript高级程序设计》这本书中认为逗号操作符,多用于声明多个变量,例如:

var a = 1 , b = 2 , c=3;

逗号操作符还可以用来赋值,操作符会返回表达式的最后一项,例如:

var aa=(5,4,3,2,1,0)

技术图片

 

MDN

逗号操作符 对它的每个操作数求值(从左到右),并返回最后一个操作数的值

语法:

表达式1,表达式2,表达式3……

表达式运算符和操作数(或是变量)的组合就是表达式,

  使用逗号运算符是为了把几个表达式放在一起。整个逗号表达式的值是系列中最后一个表达式的值。

  从本质上讲,逗号的作用是将一系列运算按照顺序执行。最右边的那个表达式的值将会作为整个逗号表达式的值,其他表达式的值将会被丢弃。

当想要在放置一个表达式的位置包含多个表达式时,可以使用逗号操作符。这个操作符最常用的一种情况是:for 循环中提供多个参数。

实例:

下面的代码使用逗号操作符第一次递增/递减两个变量。

需要注意的是,var 语句中的逗号 不是 逗号运算符,因为它不是存在于一个表达式中的。

尽管从实际效果来看,var语句中的逗号和逗号运算符的表现相似。但是确切地说,它是 var 语句中的特殊符号,用于把多个变量组合成一个。

for(var i=0,j=9;i<j;i++,j--){
//for循环中的第一个逗号是var语句的一部分
//第2个操作符是逗号操作符
//将两个表达式 i++ 和 j-- 放在一起
   document.write(i+j);
}

 

    处理后返回     

另一个使用逗号操作符的例子是在返回值之前处理一些操作。

例如下面的代码,只有最后一个表达式被返回,其他的都是被求值。

function fun(){
   var i = 0;
   return(i+=1,i);
}
fun() //只有最后一个表达式会被返回,其他的都是求值

最后结果返回的是1,之所以返回的是1,是因为逗号运算符会返回的是最后一个表达式,所谓表达式即为运算符和操作数(或是变量)

i += 1属于表达式,所以return 的结果是1。

 

参考文章:

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Comma_Operator

《JavaScript高级程序设计》

JavaScript 逗号运算符

标签:知识点   它的   inf   ora   web   参考   多个   javascrip   tps   

原文地址:https://www.cnblogs.com/nyw1983/p/12236852.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!