2014-10-03 3 views
1

javascript/jquery와 html로 코드를 작성하려고합니다. 매우 간단 할 것이라고 생각했지만 상당히 도전적이었습니다. 내가 fibonacci 시퀀스의 첫 번째 x 숫자를 계산하고 그것을 배열에 저장하는 프로그램이 있습니다. 내가하려는 것은 시퀀스의 다음 또는 이전 번호를 표시 할 두 개의 버튼을 만드는 것입니다. 이것은 내가 지금까지 가지고있는 것이다.자바 스크립트 : 버튼 클릭시 다음 배열 값을 표시하는 방법

자바 스크립트 :

var all = new Array(); 
fib = function (numMax) { 
    for (i = 0, j = 1, k = 0; k < numMax; i = j, j = x, k++) { 
     x = i + j; 
     //window.document.write(x + " "); 
     all[k] = x; 
    } 
}; 

fib(1000); 

fibon = function() { 
    getElementById("mynum").innerHTML = "all[+1]"; 
}; 

HTML :

<input type="text" id="mynum"> 
<button onclick="fibon();">Next</button> 

답변

4

당신은 현재의 인덱스가 포함 된 변수를 필요로하고 그것에게 당신이 클릭 할 때마다 증가.

fibindex = 0; 

function fibon() { 
    if (fibindex >= all.count) { 
     document.getElementById("mynum").value = "We've run out of Fibonacci numbers"; 
    } else { 
     document.getElementById("mynum").value = all[fibindex]; 
     fibindex++; 
    } 
} 

또한 변수 사용에 대해서는 따옴표를 사용하지 마십시오. .innerHTML가 아닌 .value을 입력하여 입력하십시오.

DEMO

+0

색인 OOB check !!! 하지만 그래, +1 – tymeJV

+0

당신이 썼을 때 막 추가하려고했습니다. – Barmar

+0

jsfiddle를 제발 할 수 있을까요? – VampireTooth

관련 문제