728x90
반응형
질문 : JavaScript에서 모든 문자열을 바꾸는 방법
내 JavaScript 코드에이 문자열이 있습니다.
"Test abc test test abc test test test abc test test abc"
하기:
str = str.replace('abc', '');
위의 문자열에서 abc
의 첫 번째 항목 만 제거하는 것 같습니다.
모든 항목을 어떻게 바꿀 수 있습니까?
답변
업데이트 : 가장 많이 사용되는 브라우저의 최신 버전에서 다음과 같이 replaceAll
let result = "1 abc 2 abc 3".replaceAll("abc", "xyz");
// `result` is "1 xyz 2 xyz 3"
하지만 대상 브라우저가 먼저 지원을 추가했는지 확인하려면 먼저 또는 다른 호환성 표를 사용할 수 있습니까?를 확인하십시오.
노드 및 이전 / 비 최신 브라우저와의 호환성 :
참고 : 성능이 중요한 코드에서는 다음 솔루션을 사용하지 마십시오.
간단한 리터럴 문자열에 대한 정규식의 대안으로 다음을 사용할 수 있습니다.
str = "Test abc test test abc test...".split("abc").join("");
일반적인 패턴은
str.split(search).join(replacement)
replaceAll
과 정규식을 사용하는 것보다 더 빠르지 만, 최신 브라우저에서는 더 이상 그렇지 않은 것 같습니다.
벤치 마크 : https://web.archive.org/web/20170308183046/http://jsperf.com/replace-all-vs-split-join
결론 : 성능에 중요한 사용 사례 (예 : 수백 개의 문자열 처리)가있는 경우 Regexp 메서드를 사용합니다. 그러나 대부분의 일반적인 사용 사례에서는 특수 문자에 대해 걱정할 필요가 없습니다.
출처 : https://stackoverflow.com/questions/1144783/how-to-replace-all-occurrences-of-a-string-in-javascript
728x90
반응형
'프로그래밍 언어 > HTML,CSS,JS' 카테고리의 다른 글
HTML 5 : <br> ,<br/> , <br /> 올바른 방법 (0) | 2021.06.02 |
---|---|
CSS 부모를 선택하는 방법이 있을까? (0) | 2021.06.02 |
올바른 JSON 콘텐츠 유형 (0) | 2021.06.01 |
JSON에서 주석을 사용할수 있을까? (0) | 2021.06.01 |
URI, URL 및 URN의 차이점 (0) | 2021.06.01 |