0

次のような値に基づいて2つの変数を設定するスイッチに取り組んでいます:

switch(_drukte) {
    case "normaal": 
        _gradients.push("green");
        _widths.push("20%");
    break;
    case "drukker": 
        _gradients.push("yellow");
        _widths.push("40%");
    break;
    case "gezellig druk": 
        _gradients.push("orange");
        _widths.push("60%");
    break;
    case "druk": 
        _gradients.push("red");
        _widths.push("80%");
    break;
    case "vol": 
        _gradients.push("full");
        _widths.push("100%");
    break;
    default:
        _gradients.push("green");
        _widths.push("20%");
    break;
}

何らかの理由で、これは常にデフォルトを呼び出します。_drukte は JSON ファイルに対する AJAX 取得からのもので、値はループで変化します。_drukte の値を警告しましたが、期待どおりです (現在、「通常」、「drukker」、「gezellig druk」、「druk」、および「vol」です)。他のケースを台無しにしようとしました(無効なJavaScriptにしても)、デフォルトを呼び出すだけです。

理由を知っている人はいますか?

4

1 に答える 1

2

私はウィンドウから離れすぎたくはありませんが、ajaxリクエストからの戻り値が100%あなたcaseのesに適合しないことをほぼ保証します。

もし私があなたなら、その声明のconsole.log( _drukte );直前にいたでしょう。switch

多分空白?大文字 ?

これが、実際のコードを見ずに提供できる最善の答えです。そのため、に遭遇し_drukteたときにどの正確な値が含まれているかを把握してください。switch statement

于 2013-03-19T12:05:08.350 に答える