-
Comma operator 逗号操作符的一些常规总结
-
定义: 逗号(,)运算符对它的每个操作数从左到右求值,并返回最后一个操作数的值。这让你可以创建一个复合表达式,其中多个表达式被评估,复合表达式的最终值是其成员表达式中最右边的值
-
语法:
expr1, expr2, expr3/* , … */
-
-
逗号操作符常见的应用场景
- 在一条语句中同时声明多个变量是逗号操作符最常用的场景
let num = (5, 1, 4, 8, 0); // num的值为0 【 打印台执行的话,输出的是 0 】- for 循环提供多个参数
for (let i = 0, j = 9; i <= 9; i++, j--) { console.log(`a[${i}][${j}] = ${a[i][j]}`); }- 其他一些场景
// 从左向右输出最后一个 x = (2, 3); console.log(x); // 3 // 从左向右输出最后一个 【 间接eval 】< https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/eval#direct_and_indirect_eval > (0, eval)("1 + 2") // 计算后为 eval("1 + 2") (1, eval)("1 + 2") // 计算后为 eval("1 + 2") (2, eval)("1 + 2") // 计算后为 eval("1 + 2") // 从左向右输出最后一个 let a, b, c; a = b = 3, c = 4; // 值 4 返回到控制台 // 从左向右输出最后一个 x = (y = 5, z = 6); // 值 6 返回到控制台 // 从左向右输出最后一个 function myFunc() { let x = 0; return (x += 1, x); // 与 return ++x; 等价 }