switch(true) というもの

最近初めて業務で見た ↓ のような書き方

<script>
switch(true) {
    case test() :
        alert("ABCDE") ; // function test() が の return が true だとこちら
        break ;
    default :
        alert("ZYXWV") ; // その他だとこちら
        break ;
}
function test()
{
    return true ;
}
</script>

if(test()) {…} else {…}

と同じように使えるらしいですね。

賛否あるみたいですが。

php でもできます。

<?php
switch(true) {
    case test() :
        print("ABCDE") ; // function test() が の return が true 扱いのやつだとこちら
        break ;
    default :
        print("ZYXWV") ; // その他だとこちら
        break ;
}
function test()
{
    return true ;
}