2016-06-21 4 views
0

저는이 책을 Eloquente JavaScript라고 읽었습니다.이 책의 진정한 의미는 꽤 복잡해 보입니다. 이 문제는 값이 짝수 일 경우에 따라 참 또는 거짓을 표시하는 함수를 작성해야한다는 과제였습니다. 내 버전은 책에서 나온 버전보다 상당히 짧습니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 왜 그가 이렇게 했습니까?짝수를 얻는 더 좋은 방법은 무엇입니까?

Eloquente 자바 스크립트 코드 :

function isEven(n) { 
    if (n == 0) 
    return true; 
    else if (n == 1) 
    return false; 
    else if (n < 0) 
    return isEven(-n); 
    else 
    return isEven(n - 2); 
} 

console.log(isEven(50)); 
console.log(isEven(75)); 
console.log(isEven(-1)); 

내 자신의 코드 :

function even(num) { 
     if (num % 2 == 0){ 
     return true; 
     } 
     else{ 
     return false ; 
     } 
    }; 

    console.log(even(17)); 
    console.log(even(10)); 
    console.log(even(-33)); 
    console.log(even(-40)); 
+0

그렇지 않으면 아무도 같이 그것을 구현하지 않을 것이다, 아마 재귀에 대한 장이었다. – tkausl

+0

네, 그게 보여주기위한 것이 었나요? 내 버전이 맞습니까? –

+0

교과서는 특정 언어 개념을 가르치기 때문에 종종 어려운 일을합니다. ''return num % 2 === 0''이 더 좋을지라도 당신의 함수가 "더 좋다"는 것은 사실이지만, 책이 여러분이 재귀 또는 ifs에 관해 배우기를 원한다면, 그것을하는 것이 자신의 방식대로 가르쳐주지 않았을 것입니다 너 그런 것들. – JJJ

답변

-1
function even(num) { 
    return num % 2 === 0; 
} 
+2

그건 내 질문이 아니 었어. 내가 이런 식으로 할 수 있다는 것을 알았어. 나는 왜 그들이 왜 그렇게하지 않았는지 알고 싶었다. –

관련 문제