2013-07-27 3 views
1

이 코드에 문제가 있습니다 ... 어떻게 함수 내에서 변수 전역 변수를 빼고 가져올 수 있습니까? 내가 변수 줄일 때함수의 변수 범위

var liczba = 0 
function create(data) 
{ 
    liczba-- 
} 

if(e.keyCode == 32) 
{ 
    liczba++ 

    if(liczba<5) 
    { 
    create(liczba) 
    } 
} 

liczba 그 가치에 변화가

우리의 가정을 위해 나에게

+0

당신이 문을 맞았 있는지를 디버깅나요 될 수 있을까? 또는 log ('감소') 및 log ('증가')를 배치하십시오. 또한 구문이 올바르지 않습니다. 모든 줄 끝에서 자바 스크립트 오류를 ​​확인해야합니다. Ctrl + Shift + j – MrFox

+0

게시 한 모든 내용이 이벤트 콜백 안에 래핑 된 경우 Enter 키를 누를 때마다 'liczba'가 (으)로 다시 설정됩니다. 0. – Ken

+0

@Adacho는 당신을위한 아래의 해결책입니까? –

답변

0

도와주세요있다 (JSBin)

에 의해 키를 누르면 얻을하는 것이 가장 좋습니다 방문 페이지

HTM L

<input type='text' onkeypress='return enterKeyPress(event);' /> 

그리고 CSS

var liczba = 0; 
function enterKeyPress(e){ 
    alert("In if.."+liczba); 
    if(e.keyCode == 32){ 
     liczba = liczba + 1; 
     alert("In if.."+liczba); 
     if(liczba<5){ 
      create(); 
     } 
    } else { 
     create(); 
    } 
} 
function create(){ 
    alert("In function.."+liczba); 
    liczba = liczba - 1; 
} 
+0

@Adacho이 해결책은 괜찮습니까? –

+0

불행히도 아니오 :/특별한 예는 필요하지 않지만 일반적으로 로컬 함수에서 전역 변수를 변경 한 다음 가져 오는 방법 :) – Adacho