2011-09-02 5 views
0

나는 switch 문에서 각각의 경우의 값과 같은 변수를 사용하기를 원하지만 작동하는 것 나던 : 난 정말이 때문에 예와는 달리 스위치 문을 필요 자바 스크립트 스위치의 변수는 무엇입니까?

switch(key) { 

    case keyNext: 
     //go to next 
     break; 

    case keyPrev: 
     //go to prev 
     break; 
} 

, 나는 다른 경우가 많이 있습니다 .

왜이 작동하지 않니? 그것을위한 어떤 workarounds?

수정 : 답에서 말한 것처럼 이것은 완전히 유효합니다. 개체의 속성을 각 사례의 값으로 사용하고 있는데 구문 문제가있었습니다.

+0

'key'은 무엇입니까 ? 그것은'event.keycode'입니까? 당신의'switch'는 문법 상 정확 합니다만, 어떻게 키 코드를'keyNext, keyPrev'에 매핑합니까? 프레임 워크로 정의되어 있습니까? –

+0

코드가 정상인 것 같습니다. 아마도 도움이 될만한 사례가있을 수 있습니다. 많은 경우가 있으므로 어쩌면 문법 오류가 있습니다. – nurxyz

답변

1

변수를 사용하여 확인할 수 있습니다. 다음 예제를 참조하십시오. 당신은 그들이 선언되고 값이 주어 졌는지 확인해야합니다. 문제가 다른 곳에서 발생하는지 확인하려면 함께 일하는 것이 무엇인지 확인해야합니다.

Live Demo

var keyNext = 1, // or "1" what have you, 
    keyPrev = 2, 
    key = keyPrev; // or key = 1 

switch(key) { 

    case keyNext: 
     alert('Next'); 
     break; 

    case keyPrev: 
     alert('Prev'); 
     break; 
} 
+0

입니다. 그럼 내 문제는 어딘가에있다. 내 변수는 실제로 객체의 속성입니다 (나는 동일하다고 생각하여 질문을 단순화하려고했습니다). keyNext 대신 appname.config.keyNext와 같습니다. 그것도 효과가있다, 그렇지? –

+0

잘 작동해야합니다. http://jsfiddle.net/loktar/KFCAg/4/를 참조하십시오. – Loktar

관련 문제