JavaScript - 逗号运算符
JavaScript 逗号运算符
JavaScript 中的逗号运算符 (,) 从左到右对多个表达式进行求值。您可以将左侧表达式的结果作为右侧表达式的输入。求值所有表达式后,它将返回最右侧表达式的结果。
然而,逗号运算符也用于 for 循环、数组、对象等。在本章中,您将学习逗号运算符的所有用例。
语法
您应该遵循以下语法来使用逗号表达式对多个表达式进行求值。
var answer = (exp1, exp2, exp3, ex4, ...);
返回值
它仅返回最后一个表达式的结果值。
示例
让我们通过一些示例详细了解 JavaScript 逗号运算符
示例:带字符串的逗号运算符
在下面的示例中,我们在括号中添加了 4 个以逗号分隔的字符串。在这里,每个字符串都充当一个表达式。代码将计算该字符串并返回最后一个字符串。在输出中,您可以看到它打印了"CSS",因为它是最右边的字符串。
<html>
<body>
<p id = "output"> </p>
<script>
let output = document.getElementById("output");
let ans = ("JavaScript", "Python", "HTML", "CSS");
output.innerHTML = "The value of the ans variable is: " + ans;
</script>
</body>
</html>
示例:带表达式的逗号运算符
在下面的示例中,我们定义了变量"a",并将其初始化为 5。在变量"ans"中,我们存储了逗号运算符返回的结果值。第一个表达式将 a 的值更新为 8,第二个表达式将 a 的值加 1,第三个表达式将变量"a"的更新值加 2。
"ans"的值为 11,这是逗号运算符最右边的表达式返回的值。
<html>
<body>
<p id = "output"> </p>
<script>
let output = document.getElementById("output");
let a = 5;
let ans = (a = 8, a++, a += 2);
output.innerHTML = "The value of the ans variable is: " + ans;
</script>
</body>
</html>
示例:逗号运算符与函数的结合
在下面的示例中,我们定义了 first() 和 second() 函数。此外,它还会根据函数名称打印消息并返回函数值。
我们使用逗号运算符来执行多个函数。在输出中,您可以看到它调用了这两个函数,但只打印了 second() 函数的返回值。
<html>
<body>
<p id="output"> </p>
<script>
let output = document.getElementById("output");
function first() {
output.innerHTML += "The first function is called! <br/>";
return 1;
}
function second() {
output.innerHTML += "The second function is called! <br/>";
return 2;
}
let ans = (first(), second());
output.innerHTML += "The value of the ans variable is: " + ans;
</script>
</body>
</html>
逗号运算符的其他用例
用于在一行中定义多个变量。
let m = 1, n = 2, x = 3;
初始化包含多个元素的数组。
const arr = [10, 20, 30, 40, 50, 60];
用于定义具有多个属性的对象。
const obj = {
name: "tutorialspoint",
age: 10,
... other properties
}
您可以使用逗号运算符 for 循环在每次迭代中初始化或更新多个变量。
for(let p = 0, q = 1; p < n; p++, q++) {
// 循环代码
}
将多个参数传递给函数。
function func(param1, param2, ... ) {
// 函数代码
}
或
func(10, 20, 30, ...);
导入或导出
import { func2, Variable } from './module2.js';
或
export {func1,variable,num};
解构对象数组。
let [a, b, c] = [34, 72, 23];
在控制台中打印多个变量。
console.log(a, b, c) // a、b 和 c 是变量。

