js if条件语句中的console.log是什么意思?

新手上路,请多包涵

最近看到一个微信小程序源码里一段js代码,一直弄不明白这么写是什么意思,代码如下:

if (console.log(a), void 0 !== a.bet) 
    return wx.showToast({
            title: "title",
            icon: "none"
        });

if()括号里逗号隔开的两个参数,console.log(a)和 void 0 !== a.bet 都明白,这放到一起就不知道为什么要这么写,是什么意思了,麻烦大神们给我解答下,万分感谢!

阅读 3.8k
2 个回答

这个是逗号表达式,逗号表达式的特性是从左到右依次执行,并返回最后一个表达式的值

var a = (3 * 5, 4 * 6);

console.log(a); // 24

所以 if (console.log(a), void 0 !== a.bet) 等价于:

console.log(a);

// void 0 就是 undefined了
if (undefined !== a.bet) {
  return wx.showToast({
    title: "title",
    icon: "none"
  });
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题