欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

逗号操作符

程序员文章站 2022-06-19 13:14:09
逗号操作符 这是个很容易被忽略的操作符,然而逗号操作符有个被忽略的很神奇的功能 在MDN上是这样介绍这个操作符的: **逗号操作符** 对它的每个操作数求值(从左到右),并返回最后一个操作数的值。 看看这段代码: function number() { console.log("use me"); ......

逗号操作符

这是个很容易被忽略的操作符,然而逗号操作符有个被忽略的很神奇的功能

在mdn上是这样介绍这个操作符的:

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

看看这段代码:

function number() {
    console.log("use me");
    return 999;
}

let test = (number(), 2);
console.log(test); // use me   2

没错,虽然逗号只会返回出最后一项的结果,但前面如果有函数也是会执行的。

再基于逗号会出现返回值这个特性,还能和箭头函数组合出现神奇的化学反应:

let number = 2;
function changenumber() {
    number = 999;
    return number;
}
let test = (() => (changenumber(), number))();
console.log(test); // 999

箭头函数的一个特性:当这个函数只有返回时可以省略大括号和return,而逗号表达式只是一个表达式并有一个返回值,所以原先应该写成三行的

let test = (()=>{
    changenumber();
    return number;
})();

就能被简化为一行

虽然逗号表达式有这样一个强大能力,但是也会降低代码的可读性,使不使用还是看自己吧。。。