2016-10-06 40 views
1

我有一个名为objectId的变量。objectId包含一些字符串编号。使用条件运算符来指示值是否存在

在这行我尝试请检查是否一定值OBJECTID存在:

self.showObjects = self.objectId == true ? true : false; 

但即使价值存在showObjects得到错误的。

任何想法如何修复该行以使其无法正常工作?

+1

'self.objectId'有什么值?可能是零吗?或者是一个空字符串? –

+0

你想要一个简单的'!! self.objectId'或'Boolean(self.objectId)'。不需要使用条件运算符。 – Bergi

回答

4

你可以使用

self.showObjects = !!self.objectId; 

采用double not将值强制为布尔值,这将永远地转化为truthyfalsy值。

!!0 
!!"" 
!!false 
!!NaN 

所有操作返回false

其他非空值会给你true

+0

您可以直接链接到http://stackoverflow.com/q/784929/1048572。没有必要再次解释一切:-) – Bergi

+0

谢谢@Bergi :) –