정규 표현식에서 문자열 테스트 부서의 문제와 관련하여 일반적으로 테스트 ()와 exec ()의 두 가지 방법이 있습니다. 나는이 두 방법의 차이에 대해 자세히 설명하지 않을 것입니다. 가장 중요한 것은 test ()가 부울 값을 반환하고 exec ()가 일치하는 문자 배열을 반환한다는 것입니다. 그러나 오늘 나는 문제가 발생했습니다. 이 프로그램은 매우 간단하지만 내부의 문제로 인해 이해할 수 없습니다. 온라인에서 답변을 찾지 못했습니다 (개인적으로 비교).
코드 사본은 다음과 같습니다.
var pattern = new regexp ( "match", "ig");
alert (pattern.test ( "match"));
alert (pattern.exec ( "match"));
첫 번째 ALERT ()의 값은 예상대로 참입니다.
그러나 두 번째 테스트 값은 예기치 않게 널입니다
기능 소스 코드를 보지 못했기 때문에이 질문에 대한 원리가 무엇인지 모르겠습니다. 친구가 그것을 지적 할 수 있다면 감사합니다! !