我有一个名为objectId的变量。objectId包含一些字符串编号。使用条件运算符来指示值是否存在
在这行我尝试请检查是否一定值OBJECTID存在:
self.showObjects = self.objectId == true ? true : false;
但即使价值存在showObjects
得到错误的。
任何想法如何修复该行以使其无法正常工作?
我有一个名为objectId的变量。objectId包含一些字符串编号。使用条件运算符来指示值是否存在
在这行我尝试请检查是否一定值OBJECTID存在:
self.showObjects = self.objectId == true ? true : false;
但即使价值存在showObjects
得到错误的。
任何想法如何修复该行以使其无法正常工作?
你可以使用
self.showObjects = !!self.objectId;
采用double not
将值强制为布尔值,这将永远地转化为truthy
或falsy
值。
!!0
!!""
!!false
!!NaN
所有操作返回false
。
其他非空值会给你true
。
您可以直接链接到http://stackoverflow.com/q/784929/1048572。没有必要再次解释一切:-) – Bergi
谢谢@Bergi :) –
'self.objectId'有什么值?可能是零吗?或者是一个空字符串? –
你想要一个简单的'!! self.objectId'或'Boolean(self.objectId)'。不需要使用条件运算符。 – Bergi