我试图理解一个开发人员的代码,他们喜欢使用条件运算符来存储变量。这是一个非常简洁的方式,但我不确定? and :
在下面的场景中意味着什么。
var empId = getCurrentUserId(); //getCurrentUserId function returns an id.
var thisUserName = (empId == '' ? getCurrentUserName() : empId.toUpperCase()); //getCurrentUserName returns a user name.
这也是一种将变量存储在if语句中的充分方法吗?任何帮助将不胜感激。
答案 0 :(得分:1)
... ? ... : ...
是ternary operator。它存在于a lot of languages中。就像这样使用:
variable = test ? assignIfTrue : assignIfFalse;
在您的情况下,如果thisUserName
为空,getCurrentUserName()
将被分配empId
,如果不为empId.ToUpperCase()
,则会{{1}}。