我已经看到多次使用switch(true)
,并且今天使用它而不是多个else ifs
。这里是我用它的情况:切换(真)作为其他选择如果
var isChrome = navigator.userAgent.toLowerCase().indexOf('chrome') != -1;
var isSafari = navigator.userAgent.toLowerCase().indexOf('safari') != -1;
var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') != -1;
var browser = null;
switch (true) {
case isChrome:
{
browser = "chrome";
break;
}
case isSafari:
{
browser = "safari";
break;
}
case isFirefox:
{
browser = "firefox";
break;
}
}
我的看法是比多个else ifs
明确得多。你认为这是一个好方法吗?
考虑在[codereview.se]询问 - 这类问题是Stack Overflow的主题。快乐的编码。 – Kobi
看起来很好,但你不需要交换机中的花括号。 – adeneo
http://jsfiddle.net/GjPUH/1/ – adeneo