0
자바 스크립트 patern을 만드는 데 며칠이 걸렸습니다. 자바 스크립트 setTimeout을 두 개의 루프로
내가 가진 multidimentionnal 배열을 구문 분석이로 x와 y 위치를 포함하는 "루프에 대한"array[1][x]
array[1][y]
array[2][x]
array[2][y]
ect...
내가 길이를 배열과의 사용자 푸시 x와 y 번호를 모른다 기능이 활성화되면 어레이의 길이는으로 고정됩니다. 매초마다 늘리거나 줄이기 array.length 한 배열의 끝에서 한 번호에 대한 x 및 y 배열을 구문 분석하려면 rebegin 싶습니다 배열 [1] [x] == stopX & & 배열 [ 1] [y] == stopY.
다른 접근법 테스트 버그와 무한 루프가 있습니다.
// i know stopX and stopY they are numbers and never change.
var stopX = 25;
var stopy = 49;
//i wish an condition to stop the script as this :
while(array[i][x] != stopX && array[i][y] != stopY){
for(i = 1 ; i < array.length; i++){
(function(){
var j = i;
setTimeout(function(){
//here differents "if(){" to increase or decrease array[i][x] and array[i][y];
array[i][x] += 1;
array[i][y] += 1;
}, j*1000);
}
}
}
내가이 같은 "수하는 동안"필요합니까 "w의 * J * 1000"나는 내가하지만 더 나은 일이, 내가 생각하는 폐쇄 완전히 유틸리티를 이해하지 못하고,이 개념을 이해하지 않습니다 두 번째 종결이 필요하지만 어디서 어떻게 설정할 수 있습니까?
그래서 1 초마다 무엇을 함수에서 (미안하지만 작성이 혼란 스럽습니다) 찾고 있습니다. 배열로 1 단계 앞으로 나아가고, 매초마다 x와 y에 1을 더하는 것입니다. 이 길이가 없습니다 – user2950720
클로저 안에'j'를 써야하지 않습니까? 유일하게'j'를 사용할 경우'i'와 같은 값을 갖습니다. – Oriol
그래, 나는 array [1] [x] == stopX && array [1] [y] == stopY 루프 멈춤 일 경우 배열의 끝까지 배열에서 1 초당 앞당기 고있다. array [1] [x]! == stopX &&! array [1] [y] == stopY 배열을 다시 구문 분석하여 stepX의 수와 일치 할 때까지 1을 더하도록 루프를 반복하십시오. –