From 9d09139d19b7366ec489610f2021abc20e39c98a Mon Sep 17 00:00:00 2001 From: Jongha Kim Date: Sun, 14 Jul 2024 16:13:38 +0900 Subject: [PATCH 1/2] =?UTF-8?q?[ko]=20RegExp.lastMatch=20($&)=20=EC=8B=A0?= =?UTF-8?q?=EA=B7=9C=20=EB=B2=88=EC=97=AD=20=EC=99=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - RegExp.lastMatch ($&) 신규 번역 - String.prototype.replace() 최신 동기화 - String.prototype.valueOf() 최신 동기화 --- .../global_objects/regexp/lastmatch/index.md | 49 +++++++++++++++++++ .../global_objects/string/replace/index.md | 8 +-- .../global_objects/string/valueof/index.md | 22 ++++++--- 3 files changed, 67 insertions(+), 12 deletions(-) create mode 100644 files/ko/web/javascript/reference/global_objects/regexp/lastmatch/index.md diff --git a/files/ko/web/javascript/reference/global_objects/regexp/lastmatch/index.md b/files/ko/web/javascript/reference/global_objects/regexp/lastmatch/index.md new file mode 100644 index 00000000000000..70d770b963d98b --- /dev/null +++ b/files/ko/web/javascript/reference/global_objects/regexp/lastmatch/index.md @@ -0,0 +1,49 @@ +--- +title: RegExp.lastMatch ($&) +slug: Web/JavaScript/Reference/Global_Objects/RegExp/lastMatch +l10n: + sourceCommit: fb85334ffa4a2c88d209b1074909bee0e0abd57a +--- + +{{JSRef}} {{Deprecated_Header}} + +> **참고:** 마지막 일치 상태를 전역적으로 노출하는 모든 `RegExp` 정적 속성은 더 이상 사용되지 않습니다. 자세한 내용은 [더 이상 사용되지 않는 RegExp 기능](/ko/docs/Web/JavaScript/Reference/Deprecated_and_obsolete_features#regexp)을 참고하세요. + +**`RegExp.lastMatch`** 정적 접근자 속성은 마지막 일치한 부분 문자열을 반환합니다. `RegExp["$&"]`는 이 속성의 별칭입니다. + +## 설명 + +`lastMatch`는 {{jsxref("RegExp")}}의 정적 속성이기 때문에, 생성한 `RegExp` 객체의 속성으로 사용하는 것보다는 항상 `RegExp.lastMatch` 또는 `RegExp["$&"]`로 사용해야 합니다. + +`lastMatch`의 값은 `RegExp`(`RegExp` 하위 클래스 제외) 인스턴스가 일치에 성공할 때마다 갱신됩니다. 일치하는 항목이 없으면 `lastMatch`는 빈 문자열입니다. `lastMatch`의 설정 접근자는 `undefined`이므로 이 속성을 직접 변경할 수 없습니다. + +`&`는 유효한 식별자 부분이 아니므로 점 속성 접근자(`RegExp.$&`)와 함께 약칭을 사용할 수 없으며 이로 인해 {{jsxref("SyntaxError")}}가 발생합니다. 대신 [대괄호 표기법](/ko/docs/Web/JavaScript/Reference/Operators/Property_accessors)을 사용하시기 바랍니다. + +`$&`는 {{jsxref("String.prototype.replace()")}}의 대체 문자열에도 사용할 수 있지만, 이는 `RegExp["$&"]` 레거시 속성과는 관련이 없습니다. + +## 예제 + +### lastMatch와 $& 사용하기 + +```js +const re = /hi/g; +re.test("hi there!"); +RegExp.lastMatch; // "hi" +RegExp["$&"]; // "hi" +``` + +## 명세서 + +{{Specifications}} + +## 브라우저 호환성 + +{{Compat}} + +## 같이 보기 + +- {{jsxref("RegExp/input", "RegExp.input ($_)")}} +- {{jsxref("RegExp/lastParen", "RegExp.lastParen ($+)")}} +- {{jsxref("RegExp/leftContext", "RegExp.leftContext ($`)")}} +- {{jsxref("RegExp/rightContext", "RegExp.rightContext ($')")}} +- {{jsxref("RegExp/n", "RegExp.$1, …, RegExp.$9")}} diff --git a/files/ko/web/javascript/reference/global_objects/string/replace/index.md b/files/ko/web/javascript/reference/global_objects/string/replace/index.md index 155f158881bffd..a1c98f1afd27f2 100644 --- a/files/ko/web/javascript/reference/global_objects/string/replace/index.md +++ b/files/ko/web/javascript/reference/global_objects/string/replace/index.md @@ -2,7 +2,7 @@ title: String.prototype.replace() slug: Web/JavaScript/Reference/Global_Objects/String/replace l10n: - sourceCommit: fb85334ffa4a2c88d209b1074909bee0e0abd57a + sourceCommit: 6e93ec8fc9e1f3bd83bf2f77e84e1a39637734f8 --- {{JSRef}} @@ -36,7 +36,7 @@ replace(pattern, replacement) 문자열 패턴은 한 번만 바뀝니다. 전역 검색 및 바꾸기를 수행하려면 `g` 플래그가 있는 정규 표현식을 사용하거나 [`replaceAll()`](/ko/docs/Web/JavaScript/Reference/Global_Objects/String/replaceAll)을 대신 사용하세요. -`pattern`이 [`Symbol.replace`](/ko/docs/Web/JavaScript/Reference/Global_Objects/Symbol/replace) 메서드가 있는 객체(`RegExp` 객체 포함)인 경우, 해당 메서드는 대상 문자열과 `replacement`를 인수로 사용하여 호출됩니다. 그 반환 값은 `replace()`의 반환 값이 됩니다. 이 경우 `replace()`의 동작은 전적으로 `@@replace` 메서드로 인코딩됩니다. 예를 들어, 아래 설명에서 "그룹 캡처"에 대한 언급은 실제로 [`RegExp.prototype[@@replace]`](/ko/docs/Web/JavaScript/Reference/Global_Objects/RegExp/@@replace)에서 제공하는 기능입니다. +`pattern`이 [`Symbol.replace`](/ko/docs/Web/JavaScript/Reference/Global_Objects/Symbol/replace) 메서드가 있는 객체(`RegExp` 객체 포함)인 경우, 해당 메서드는 대상 문자열과 `replacement`를 인수로 사용하여 호출됩니다. 그 반환 값은 `replace()`의 반환 값이 됩니다. 이 경우 `replace()`의 동작은 전적으로 `[Symbol.replace]()` 메서드로 인코딩됩니다. 예를 들어, 아래 설명에서 "그룹 캡처"에 대한 언급은 실제로 [`RegExp.prototype[Symbol.replace]()`](/ko/docs/Web/JavaScript/Reference/Global_Objects/RegExp/@@replace)에서 제공하는 기능입니다. `pattern`이 빈 문자열인 경우 문자열의 시작 부분에 대체 문자열이 추가됩니다. @@ -44,7 +44,7 @@ replace(pattern, replacement) "xxx".replace("", "_"); // "_xxx" ``` -플래그가 `g`인 정규식은 `replace()`가 두 번 이상 대체하는 유일한 경우입니다. 정규식 속성(특히 [sticky](/ko/docs/Web/JavaScript/Reference/Global_Objects/RegExp/sticky) 플래그)이 `replace()`와 상호작용하는 방법에 대한 자세한 내용은 [`RegExp.prototype[@@replace]()`](/ko/docs/Web/JavaScript/Reference/Global_Objects/RegExp/@@replace)를 참고하세요. +플래그가 `g`인 정규식은 `replace()`가 두 번 이상 대체하는 유일한 경우입니다. 정규식 속성(특히 [sticky](/ko/docs/Web/JavaScript/Reference/Global_Objects/RegExp/sticky) 플래그)이 `replace()`와 상호작용하는 방법에 대한 자세한 내용은 [`RegExp.prototype[Symbol.replace]()`](/ko/docs/Web/JavaScript/Reference/Global_Objects/RegExp/@@replace)를 참고하세요. ### 대체할 내용을 문자열로 지정하기 @@ -251,4 +251,4 @@ console.log("abcd".replace(/(?bc)/, addOffset)); // "abc (1) d" - {{jsxref("RegExp.prototype.exec()")}} - {{jsxref("RegExp.prototype.test()")}} - [`Symbol.replace`](/ko/docs/Web/JavaScript/Reference/Global_Objects/Symbol/replace) -- [`RegExp.prototype[@@replace]()`](/ko/docs/Web/JavaScript/Reference/Global_Objects/RegExp/@@replace) +- [`RegExp.prototype[Symbol.replace]()`](/ko/docs/Web/JavaScript/Reference/Global_Objects/RegExp/@@replace) diff --git a/files/ko/web/javascript/reference/global_objects/string/valueof/index.md b/files/ko/web/javascript/reference/global_objects/string/valueof/index.md index e03944ead580b9..7248652a56c3cc 100644 --- a/files/ko/web/javascript/reference/global_objects/string/valueof/index.md +++ b/files/ko/web/javascript/reference/global_objects/string/valueof/index.md @@ -1,23 +1,29 @@ --- title: String.prototype.valueOf() slug: Web/JavaScript/Reference/Global_Objects/String/valueOf +l10n: + sourceCommit: 27180875516cc311342e74b596bfb589b7211e0c --- {{JSRef}} -**`valueOf()`** 메서드는 {{jsxref("String")}} 객체의 원시값을 반환합니다. +{{jsxref("String")}} 값의 **`valueOf()`** 메서드는 {{jsxref("String")}} 이 문자열 값을 반환합니다. {{EmbedInteractiveExample("pages/js/string-valueof.html")}} ## 구문 -```js -str.valueOf(); +```js-nolint +valueOf() ``` +### 매개변수 + +없음. + ### 반환 값 -지정된 {{jsxref("String")}} 객체의 원시 값을 나타내는 문자열. +주어진 {{jsxref("String")}} 객체의 원시 값을 나타내는 문자열. ## 설명 @@ -27,14 +33,14 @@ str.valueOf(); ## 예제 -### `valueOf()` 사용 +### `valueOf()` 사용하기 ```js -var x = new String("Hello world"); -console.log(x.valueOf()); // 'Hello world' 가 보여집니다. +const x = new String("Hello world"); +console.log(x.valueOf()); // 'Hello world' ``` -## 명세 +## 명세서 {{Specifications}} From faec1d942b22db23501d2dbf804d717a6340ec3c Mon Sep 17 00:00:00 2001 From: hochan Lee Date: Tue, 30 Jul 2024 01:28:06 +0900 Subject: [PATCH 2/2] Update files/ko/web/javascript/reference/global_objects/regexp/lastmatch/index.md --- .../reference/global_objects/regexp/lastmatch/index.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/files/ko/web/javascript/reference/global_objects/regexp/lastmatch/index.md b/files/ko/web/javascript/reference/global_objects/regexp/lastmatch/index.md index 70d770b963d98b..36716555898395 100644 --- a/files/ko/web/javascript/reference/global_objects/regexp/lastmatch/index.md +++ b/files/ko/web/javascript/reference/global_objects/regexp/lastmatch/index.md @@ -7,7 +7,8 @@ l10n: {{JSRef}} {{Deprecated_Header}} -> **참고:** 마지막 일치 상태를 전역적으로 노출하는 모든 `RegExp` 정적 속성은 더 이상 사용되지 않습니다. 자세한 내용은 [더 이상 사용되지 않는 RegExp 기능](/ko/docs/Web/JavaScript/Reference/Deprecated_and_obsolete_features#regexp)을 참고하세요. +> [!NOTE] +> 마지막 일치 상태를 전역적으로 노출하는 모든 `RegExp` 정적 속성은 더 이상 사용되지 않습니다. 자세한 내용은 [더 이상 사용되지 않는 RegExp 기능](/ko/docs/Web/JavaScript/Reference/Deprecated_and_obsolete_features#regexp)을 참고하세요. **`RegExp.lastMatch`** 정적 접근자 속성은 마지막 일치한 부분 문자열을 반환합니다. `RegExp["$&"]`는 이 속성의 별칭입니다.