我正在写“塔罗牌”读卡器,现在我不得不添加“预测”。
唯一的问题是,我已经意识到将有40多个可能的答案。

除了编写40多个切换用例以外,还有没有更快速的方法来比较两个变量并基于该变量输出内容?

谢谢!

最佳答案

将数据存储在层次结构中,您可以根据两个变量各自的值进行遍历。这样,确定值就像引用对象options[variable1][variable2]一样简单。请参见下面的示例。

在代码段中,两个下拉菜单控制着两个变量的值。



var options = {
  "A": { "C": 1, "D": 2 },
  "B": { "C": 3, "D": 4 }
}

$(function() {
    $("#dd1, #dd2").change(function() {
        var opt1 = $("#dd1").val();
        var opt2 = $("#dd2").val();
        var value = options[opt1][opt2];
        $("#result").text(value);
    });
    $("#dd1").change();
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select id="dd1">
  <option>A</option>
  <option>B</option>
</select>
<select id="dd2">
  <option>C</option>
  <option>D</option>
</select>
<div id="result"></div>

关于javascript - 替代switch/if else语句?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26708243/

10-09 18:14