JavaScript Cookbook : 한 권으로 끝내는 문제 해결
문제가 생길 때마다 바퀴를 다시 만들 필요가 없습니다. 찾고자 하는 해결책이 가득 들어 있습니다. 일반적인 프로그래밍 작업, 크로스 브라우저 프로그램을 만드는 방법 등의 코드 레시피가 수록되어 있습니다. 프로젝트에 바로 적용할 수 있는 예제 코드를 제공합니다.
- 저자 : 셸리 파워즈
- 번역 : 김태곤
- 출간 : 2011-12-16
질문할 공간이 없어서
리뷰란에 질문을 올립니다.
죄송합니다.
p.64의 exec 메소드가 배열을 반환한다는 내용이 이상합니다.
배열을 반환한다면서
예제 소소에서 matchArray[0]으로 각 값을 가져온다는 게 이상합니다.
exec 결과의 length는 늘 1입니다.
배열이라면 length 1의 배열을 반환하는 겁니다.
그리고 while문을 돌릴거라면 "전역" 플래그가 왜 필요한지도 의문입니다.
while문에서 매번 새로운 1개 짜리 배열을 반환하는 메소드라니..
이해하기가 어렵네요.
제가 전역 플래그 제외하고 문자열 취급해서 while문으로 배열에 넣어봤습니다.
책의 소스와 결과는 동일합니다.
function aaa() {
var searchString = "Now is the time and this is the time and that is the time";
var pattern = /t\w*e/;
var matchArray = new Array();
var matchStr = "";
while( (matchStr = pattern.exec(searchString)) != null)
{
matchArray.push(matchStr);
}
for(var i=0 ; i {
document.getElementById("results").innerHTML += "at " + matchArray[i].index + " we found [" + matchArray[i] + "]
";
}
}
window.onload = aaa();
exec가 배열을 반환한다는 책의 설명과 소스는 서로 어긋나는 설명 아닌가요?
저로서는 이해하기가 어렵네요.
번역자님의 답변을 들을 수 있다면 감사하겠습니다.
답변을 해주신 후에
이 글을 삭제하면 감사하겠습니다.
독자 리뷰에 이런 글 올려 죄송합니다.