2013-06-28 59 views
-6

由於某種原因,評估者if isEven(n)發生錯誤...您是否可以發現代碼問題?涉及if/else未被正確評估的簡短Javascript代碼片段

function isEven(value) { 
    //value = Number(value); 
    if (value%2 == 0) 
     return true; 
    else 
     return false; 
} 


function testCondition { 

    if isEven(n) { 

    } 
    else { 

    } 
} 
+1

「被給了一個錯誤」 ---我們需要猜測現在? – zerkms

+0

哦,我看到'isEven'中沒有語法錯誤,只是不好縮進。無論如何,你可以做這個'function isEven(v){return v%2 === 0}'。簡單得多 – elclanrs

回答

5

有在你的代碼語法錯誤:

function isEven(value) { 
    //value = Number(value); 
if (value%2 == 0) // no parens here is allowed so no syntax error 
    return true; 
else 
    return false; 
} 


function testCondition() { 
        // ^^ missing parens here 

    if (isEven(n)) { 
    //^-------^-- and here 

      } 
    else { 

     } 
} 
3
if isEven(n) { 

你錯過了解決此括號,所以你會得到一個的SyntaxError

if (isEven(n)) { 

你還缺少一個()testConditionas pointed out by Frits van Campen

+1

'testCondition'也缺少parens。 –

+0

@MattGreer這是真的 –

1

只是一些小的語法問題,試試這個:

function isEven(value) { 
    //value = Number(value); 
    if (value%2 == 0){ 
     return true; 
    }else{ 
     return false; 
    } 
} 


function testCondition() { 

    if (isEven(n)) { 
     //do something 
    } else { 
     //do something else 
    } 
}