JavaScript 中的 ?: 语法是啥? [复制]
Posted
技术标签:
【中文标题】JavaScript 中的 ?: 语法是啥? [复制]【英文标题】:What is the ?: syntax in JavaScript? [duplicate]JavaScript 中的 ?: 语法是什么? [复制] 【发布时间】:2015-10-17 03:53:35 【问题描述】:下面一行是什么意思?
T = ($("#a .b").hasClass("active") ? "C" : "D") ;
$("#a .b").hasClass("active")
表示#a .b
是否存在?但是? "C" : "D"
呢,是不是某种比较逻辑?
【问题讨论】:
它是三元运算符(与 jQuery 无关),是 if/else 语句的简写 你是对的,我只是在 jquery 语句中看到它。谢谢罗伊 【参考方案1】:这是ternary operator
condition ? expr1 : expr2
如果条件为真,则 expr1 将返回,否则 expr2 将返回。
所以,在你的情况下:
T = ($("#a .b").hasClass("active") ? "C" : "D") ;
T
变量将保持 "C"
如果 $("#a .b")
具有类 active
否则它将保持 "D"
【讨论】:
【参考方案2】:它告诉你:
if ( $("#a .b").hasClass("active") )
T = "C";
else
T = "D"
您可以在此处阅读此文档以进一步了解。 Ternary Operator
【讨论】:
以上是关于JavaScript 中的 ?: 语法是啥? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
javascript 中的 obj?.prop 语法是啥? [复制]
React 和 GraphQL 中使用的“...”语法是啥?它是更通用的Javascript吗?
在Javascript中更新对象数组中的键的最有效方法是啥? [复制]