js中的if条件竟然可以这样写???

例如:if(1,1,1){alert("123")}:经过测试,发现这种形式中的逗号好像和&&运算符一样;但是不能确定;请大神看看,这种形式和使用&&运算符有什么区别??... 例如:if(1,1,1){alert("123")}:

经过测试,发现这种形式中的逗号好像和&&运算符一样;但是不能确定;请大神看看,这种形式和使用&&运算符有什么区别???? 这种形式叫什么名字啊?
展开
 我来答
前端小茶馆
推荐于2018-11-28 · TA获得超过962个赞
知道小有建树答主
回答量:329
采纳率:0%
帮助的人:343万
展开全部
这是逗号运算符,之前所有的运算表达式都会执行,但整个语句的值是最后一个表达式的值

比如:a = (b=2, c=3, 4==4);
括号里的是逗号运算表达式,b=2, c=3这样的赋值表达式会正常执行,
但a最后的值是true,也就是4==4的结果,true;如果换成4==5,a就是false了

而 && 表达式是只要其中一个为假,那么整个表达式就是假
逗号表达式(s=a, b, c, ...., n)s的值就是n的值,与前面的都没有关系,只是正常的执行罢了,不会影响结果
lyz810
2013-12-24 · 知道合伙人互联网行家
lyz810
知道合伙人互联网行家
采纳数:7531 获赞数:31776
前端开发工程师

向TA提问 私信TA
展开全部
if的条件是任意合法表达式
js中逗号表达式的值为最右面的那个值
if(1,1,1)等价于if(1)
if(1,2,3,4,5)等价于if(5)
if(false,true)等价于if(true)
if(true,false)等价于if(false)
与&&无任何关系
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式