有沒有辦法讓這個更漂亮;改進多個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