1. ---> 결과가 a c b 로 나온다.함수중에는 웹 브라우저에 처리를 부탁하는 함수가 있다. 타이머 함수와 웹 요청은 웹 브라우저가 처리하고 처리가 완료되었다는 것을 자바스크립트에게 알려주는 방식이다. 이러한 함수는 현재 단위가 끝나기 전에는 실행되지 않는다. 2. ---> 결과가 0,1,2가 아닌 3,3,3 이 출력된다.이건 setTimeout 함수를 호출하는 시점이 반복문이 모두 끝난 이후이므로 발생하는 문제이다. 따라서, 0,1,2 를 출력하려면 따로 변수를 복사해두어야 한다.
타이머 관련 함수 setTimeout(function, millisecond) - 일정시간 후 함수를 한번 실행 setInterval(function, millisecond) - 일정 시간마다 함수를 반복해서 실행 clearTimeout(id) - 일정 시간 후 함수를 한 번 실행하는 것을 중지한다. clearInterval(id) - 일정 시간마다 함수를 반복하는 것을 중단한다. 예시) 2초마다 실행하는 걸 10초후 setTImeout함수를 실행해서 멈춘다. hello script
배열을 쉽게 반복해서 꺼낸다.
// 숫자만 입력받는다. "-"도 받지않는다. function fnNumberCheck(obj) { if (/[^0-9,]/g.test(obj.value)) { var text1 = obj.value.substring(0, obj.value.length - 1); alert("0-9의 정수만 허용합니다."); //이게 핵심이다. 이 alert 가 있어야 정상동작. obj.focus(); obj.value = text1; return false; } else { obj.value = number_format(obj.value); } } [출처] [ASP.Net] javascript 로 숫자만 입력, 천단위 , 찍기.|작성자 바람