基本上如果没有设置变量,则将其设置为另一个值。
必须有更好的方法,这看起来很混乱。
if ($image_src === undefined) {
$image_src = $apple_icon;
}
if ($image_src === undefined) {
$image_src = $apple_icon2;
}
if ($image_src === undefined) {
$image_src = $item_prop_image;
}
if ($image_src === undefined) {
$image_src = $image_first;
}
答案 0 :(得分:10)
在JavaScript中,您可以使用或||
运算符来压缩未定义的内容。所以这是有效的:
$image_src = $image_src || $apple_icon || $apple_icon1;
答案 1 :(得分:4)
$image_src = $image_src || $apple_icon;
http://billhiggins.us/blog/2007/02/13/the-javascript-logical-or-assignment-idiom/
答案 2 :(得分:1)
扩展我的评论 - 如果您确实有可能没有声明其中一个变量的情况,您可以执行以下操作 - 更难阅读,但更安全:
$image_src = getWhateverTheInitialValueIsSupposedToBe();
$image_src = $image_src || (
(typeof($apple_icon) !== "undefined" && $apple_icon) ? $apple_icon :
(typeof($apple_icon2) !== "undefined" && $apple_icon2) ? $apple_icon2 :
(typeof($item_prop_image) !== "undefined" && $item_prop_image) ? $item_prop_image :
(typeof($image_first) !== "undefined" && $image_first) ? $image_first :
$image_src);
答案 3 :(得分:0)
老实说,我认为你写的方式清楚地表明你想做什么。
你可以通过其他答案中显示的方式使其更紧凑,但我发现你写它的方式乍一看比其他IMO更容易理解。
这完全取决于你想要什么。 ||
方法可能更有效,但你的方法很可读。
在函数中包装它会没问题。