오늘 jquery 소스코드를 읽다가 이전에는 전혀 눈치 채지 못했던 문제를 발견했는데, 그것은 replacement()의 두 번째 매개변수가 함수일 때의 문제입니다. ()도 함수일 수 있는데 어떻게 동작하는지 모르겠네요. 오늘 소스코드에서 replacement()의 두 번째 매개변수로 사용되는 함수를 보고 읽기 어렵다고 느껴서 기획하게 되었습니다. 이 기능을 정리하려면...
문법
stringObject.replace(regexp/substr, 교체)
반환값
첫 번째 일치 항목이나 원하는 정규식 일치 항목을 대체 항목으로 대체하여 얻은 새 문자열을 반환합니다.
replace() 메서드의 매개변수 대체가 함수인 경우, 이 경우 일치하는 항목마다 함수가 호출되고, 함수에서 반환된 문자열이 대체 텍스트로 사용됩니다. 이 함수의 첫 번째 매개변수는 패턴과 일치하는 문자열입니다. 다음 매개변수는 패턴의 하위 표현식과 일치하는 문자열입니다. 이러한 매개변수는 0개 이상 있을 수 있습니다. 다음 매개변수는 일치가 발생하는 stringObject의 위치를 선언하는 정수입니다. 마지막 매개변수는 stringObject 자체입니다. 이 문장은 w3cschool에서 복사한 것입니다. 지금은 위 문단이 잘 이해되지 않고, 단순히 제 말로 설명할 수 없어서 예문을 통해서만 설명하겠습니다.
위는 제가 오늘 본 jquery 소스코드입니다
이 기능은 당시에는 이해하지 못했는데 지금은 알 것 같은 느낌이 듭니다
그러고보니 예전에 replacement()를 사용할 때 "$1, $2" 등 당시 나에게 이상한 기호였던 이상한 기호를 만났던 게 언제인지 기억이 난다. 이제 예라이가 이 질문에 대한 답을 얻었습니다
$1, $2, $3.... 1, 2, 3을 캡처한다는 의미입니다....
$&는 정규 표현식과 일치하는 하위 문자열을 나타냅니다
$`는 일치하는 하위 문자열 왼쪽에 있는 텍스트를 나타냅니다
$'는 일치하는 하위 문자열의 오른쪽에 있는 텍스트를 나타냅니다
$$는 바로 $ 기호입니다
위의 내용은 제가 대체() 메소드 사용에 대해 명확하지 않은 부분입니다. 제가 작성한 내용에 잘못된 점이 있거나 이 메소드를 더 잘 사용하는 예가 있는 경우입니다. , 공유해 주셨으면 좋겠습니다...
위 내용은 이 글의 전체 내용입니다. 모두 마음에 드셨으면 좋겠습니다.