2016-02-12 57 views
-3

下面是我的代碼是否有更好的語法來執行此代碼?

if(!chineseName) { 
     alert("chineseName is not correct"); 
    } 
    else if(!IDN){ 
     alert("IDN is not correct"); 
    } 
    else if(!mobileNumber){ 
     alert("number is not correct"); 
    } 
    else if(hasAccount){ 
     if(!isAccountNumberValid) { 
      alert("account number is not correct"); 
     } 
     else { 
      check(); 
     } 
    } 
    else { 
     check(); 
    } 



    function check() { 
     if(!check1 && !check2) { 
      alert("Please read NOTE and check the read box."); 
     } 
     else { 
      alert("Everything is good to go!!"); 
     } 
    } 

現在,這個代碼工作正確。 但是,我想知道是否有更好的語法來執行相同的事情?

謝謝。

+5

你應該將你的問題http://codereview.stackexchange.com/ – kosmos

+1

提醒一下,你可能會想張貼此問題到codereview.stackexchange.com之前,有人在這裏讓它無關緊要,你會得到大量的反對票。發生在我身上。 – Anfal

+0

對不起,我不知道我們有那個地方。謝謝 – Dreams

回答

1

您可以組合最後兩個,因爲動作是相同的,只需更改最後一個條件即可。

if (!chineseName) { 
    alert("chineseName is not correct"); 
} else if (!IDN){ 
    alert("IDN is not correct"); 
} else if (!mobileNumber){ 
    alert("number is not correct"); 
} else if (hasAccount && !isAccountNumberValid) { // Modified condition 
    alert("account number is not correct"); 
} else { 
    check(); 
} 
1

你或許可以將所有警報到一個:

var msg = ""; 

if (!chineseName) { 
    msg = "chineseName is not correct"; 
} else if (!IDN) { 
    msg = "IDN is not correct"; 
} else if (!mobileNumber) { 
    msg = "number is not correct"; 
} else if (hasAccount) { 
    if (!isAccountNumberValid) { 
     msg = "account number is not correct"; 
    } else { 
     msg = check(); 
    } 
} else { 
    msg = check(); 
} 

alert(msg); 


function check() { 
    if (!check1 && !check2) 
     return "Please read NOTE and check the read box."; 

    return "Everything is good to go!!"; 
} 
相關問題