有没有办法让这个更漂亮;改进多个if语句的语法?
if ($("#Input").text === "A") { sOutput = "a"; lColor = "red"; }
if ($("#Input").text === "B") { sOutput = "b"; lColor = "orange"; }
if ($("#Input").text === "C") { sOutput = "c"; lColor = "yellow"; }
if ($("#Input").text === "D") { sOutput = "d"; lColor = "green"; }
if ($("#Input").text === "E") { sOutput = "e"; lColor = "blue"; }
if ($("#Input").text === "F") { sOutput = "f"; lColor = "violet"; }
...
真正的代码更加广泛,与& &和||在不同变量之间。但每行都遵循相同的语法,保存我正在查找的'letter(s)'以及我设置的变量。对我来说,我感到很浪费,我有很多ifs。
*该代码是虚拟代码来说明我的观点。
编辑
伪代码是不是说明我的观点,所以这里是真正的样品;
if ($(".Fig_Main").hasClass("Active")) {
sect_1 = (($(".Fig_A").hasClass("Active")) && ($(".Fig_1").hasClass("Active"))) ? "Slide_A1"
: (($(".Fig_A").hasClass("Active")) && ($(".Fig_B").hasClass("Active"))) ? "Slide_AB"
: (($(".Fig_1").hasClass("Active")) && ($(".Fig_B").hasClass("Active"))) ? "Slide_1B"
: (($(".Fig_1").hasClass("Active")) && ($(".Fig_3").hasClass("Active"))) ? "Slide_13"
...
我有此块(这是几行更长)重复几次,为不同的sect_#每个时间,并且得到的设定值(Slide_XY)。
所有当前的建议非常感谢。保持它来。
使用地图和下部框。不知道非虚拟代码是否有益,但是 - 不知道你真的是什么*真的很难知道如何提供帮助。 – 2012-08-02 02:01:33
代码可读,但不一定高效。如果没有'else',javascript将别无选择,只能测试所有条件。 – 2012-08-02 02:03:00
@RosdiKasim,它不是'Java'而是'javascript'。 – 2012-08-02 02:03:48