js中if语句判断条件用逗号隔开是什么意思

代码中有以下语句:

if ($(".goProdList").click(function () { window.location.href = "./prodList.html"}), $(".navbar ul li.nav-main").addClass("active"), username) {
    ...此处省略一系列逻辑代码
}

不理解 if 的判断条件用逗号隔开是什么意思,如果写成普通的格式,是下面这种吗:

$(".goProdList").click(function () { window.location.href = "./prodList.html"});
$(".navbar ul li.nav-main").addClass("active");
if(username) {
    ...此处省略一系列逻辑代码
}

求解答~~

阅读 131
评论
    2 个回答
    • 272

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

    let x = 1;
    
    x = (x++, x);
    
    console.log(x);
    // expected output: 2
    
    x = (2, 3);
    
    console.log(x);
    // expected output: 3
    

    你的展开没问题

      • 494
      • 你的展开没有任何问题。
      • 第一种写法的可读性好差。但结果和你展开的代码,貌似没区别。
        撰写回答

        登录后参与交流、获取后续更新提醒