逗号运算符
它将先计算左边的参数,再计算右边的参数值。然后返回最右边参数的值。
var a = 3,b = 4;
console.log((function(){ return b = 5,b })()) // 等价于 b = 5; return b
一、逗号运算符的特性及作用
逗号运算符的作用是将若干表达式连接起来。它的优先级别在所有运算符中是最低的,结合方向是"自左至右"的。
如:3*3,4*4
二、逗号表达式逗号表达式的一般形式是:表达式1,表达式2,表达式3……表达式n
逗号表达式的求解过程是:先计算表达式1的值,再计算表达式2的值,……一直计算到表达式n的值。最后整个逗号表达式的值是表达式n的值。
看下面几个例子:
//示例1
x1=8*2,x1*4 //x1的值为16, 整个逗号表达式的值为 64
console.log(x1); //16
// x1=16 64
console.log( (x1=8*2,x1*4) ); //64
//示例2
(x2=8*2,x2*4),x2*2 //x2的值为 16, 整个逗号表达式的值为 32
console.log(x2) //16
// x2=16 64 32
console.log( ( (x2=8*2,x2*4),x2*2 ) ) //32
//示例3
x3=(z3=5,5*2) //x3的值为整个逗号表达式的值, z3的值为5
console.log(x3); //10
console.log(z3); //5
//示例4
x4=z4=5,5*2 //整个表达式为逗号表达式,它的值为10,x4和z4的值都为5
console.log(x4, z4); //5 5
console.log( (x4=z4=5,5*2) ) // 10