我有这种情况:
var myResult = scope.inside.GetMyData() || scope.outside.GetMyData();
其中一个功能将包含该方法。我需要检查第一个是否返回任何内容,如果没有,则使用另一个。
在第一种情况下,它运作得很好。但是如果范围为null,那么它会给我这个错误:
未捕获的TypeError:无法读取属性'范围' null。
我可能会执行if / else并检查null,但我想使用||如果可能的话。
有什么建议吗?
答案 0 :(得分:0)
您可以使用&&
:
var myResult = scope && (scope.inside.GetMyData() || scope.outside.GetMyData());
或三元运营商:
var myResult = !scope ? null : (scope.inside.GetMyData() || scope.outside.GetMyData());