【发布时间】:2013-07-31 06:03:11
【问题描述】:
我遇到了以下情况。
在我的脚本中,我已将所有发布到网页的字符串提取到这样的对象中。
var strings = {
one: "One",
two: "Two",
three: "Three",
}
请不要问我为什么要这样做,这只是一个测试用例。
现在我想将这些字符串之一推送到警报()中。这看起来像这样:
alert(strings.one);
到目前为止一切顺利,但我想检查 strings 或 strings.one 是否存在以及何时不返回空字符串。
不使用经典的if(strings.one == undefined),有什么巧妙的方法来做到这一点?
编辑
我根据你的回答和cmets找到了解决办法。
alert((window.strings) ? strings.one || "nope" : "nope");
这可以捕获我想要预防的所有情况:
- 我忘了声明
strings -
strings.one不存在
我希望这适合“巧妙的方式”?!
【问题讨论】:
-
您正在寻找ternary operator。还要检查short-circuit operators
标签: javascript variables if-statement