Skip to content

Commit

Permalink
[ko] Intl.DisplayNames() 생성자 신규 번역 외 (#22393)
Browse files Browse the repository at this point in the history
* [ko] Intl.DisplayNames() 생성자 신규 번역 외

- Intl.DisplayNames() 생성자 신규 번역
- Intl.DisplayNames 최신화
- String.prototype.endsWith() 최신화

* 리뷰사항 수정
  • Loading branch information
wisedog authored Jul 30, 2024
1 parent eadcb81 commit 929eb5c
Show file tree
Hide file tree
Showing 3 changed files with 156 additions and 40 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
---
title: Intl.DisplayNames() 생성자
slug: Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/DisplayNames
l10n:
sourceCommit: 21d44fab158378a975fd89ec37e46ec68a411bf2
---

{{JSRef}}

**`Intl.DisplayNames()`** 생성자는 {{jsxref("Intl.DisplayNames")}} 객체를 생성합니다.

{{EmbedInteractiveExample("pages/js/intl-displaynames.html")}}

## 구문

```js-nolint
new Intl.DisplayNames(locales, options)
```

> **참고:** `Intl.DisplayNames()`는 오직 [`new`](/ko/docs/Web/JavaScript/Reference/Operators/new)로만 생성할 수 있습니다. `new` 없이 호출을 시도하면 {{jsxref("TypeError")}} 예외가 발생합니다.
### 매개변수

- `locales`
- : BCP 47 언어 태그가 포함된 문자열 또는 {{jsxref("Intl.Locale")}} 인스턴스 또는 이러한 로케일 식별자의 배열입니다. `undefined`이 전달되거나 명시된 로케일 식별자가 지원되지 않는 경우 런타임의 기본 로케일이 사용됩니다. `locales` 인수의 일반적인 형식과 해석에 대해서는 [`Intl` 메인 페이지의 매개변수 설명](/ko/docs/Web/JavaScript/Reference/Global_Objects/Intl#locales_argument)을 참고하세요.
- `options`
- : 검색되는 순서대로 다음 속성을 포함하는 객체입니다.
- `localeMatcher` {{optional_inline}}
- : 사용할 로케일 일치 알고리즘입니다. 가능한 값은 `"lookup"``"best fit"`이며, 기본값은 `"best fit"`입니다. 이 옵션에 대해 더 알고 싶으시다면 [로케일 식별 및 협상](/ko/docs/Web/JavaScript/Reference/Global_Objects/Intl#locale_identification_and_negotiation)을 참고하시기 바랍니다.
- `style` {{optional_inline}}
- : 사용할 서식 스타일. 가능한 값은 `"narrow"`, `"short"`, 그리고 `"long"`입니다. 기본 값은 `"long"`입니다..
- `type`
- : [`of()`](/ko/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/of)로 부터 반환된 출력 이름의 유형입니다. 가능한 값은 `"language"`, `"region"`, `"script"`, `"currency"`, `"calendar"`, 그리고 `"dateTimeField"`입니다..
- `fallback` {{optional_inline}}
- : 입력이 구조적으로 유효하지만 일치하는 표시 이름이 없는 경우 `of()`에서 반환할 값입니다. 가능한 값은 아래와 같습니다.
- `"code"` (기본)
- : 입력 코드 자체를 반환합니다.
- `"none"`
- : `undefined`을 반환합니다.
- `languageDisplay` {{optional_inline}}
- : 언어가 표시되어야 할 방법입니다. `type: "language"`와 함께 할때만 사용 가능합니다. 가능한 값은 다음과 같습니다.
- `"dialect"` (default)
- : 특수 지역 방언은 고유한 이름을 사용하여 표시합니다. 예: `"nl-BE"``"플랑드르어"`로 표시됩니다.
- `"standard"`
- : 표준 형식을 사용하여 모든 언어를 표시합니다. 예: `"nl-BE"``"네덜란드어(벨기에)"`로 표시됩니다.

### 예외

- {{jsxref("TypeError")}}
- : `options.type`이 없을 경우 발생합니다.
- {{jsxref("RangeError")}}
- : `locales` 혹은 `options`에 유효하지 않은 값이 포함될 경우 발생합니다.

## 예제

### 기본 사용법

어떠한 로케일 명시 없이 사용하는 기본 예제에서는 기본 로케일, 기본 옵션으로
형식이 맞춰진 문자열이 반환됩니다.

```js
console.log(new Intl.DisplayNames([], { type: "language" }).of("US"));
// 'us'
```

### `dateTimeField` type 사용하기

`dateTimeField`를 type 옵션으로 사용하는 예제는 지역화된 날짜 시간 이름 문자열을 반환합니다.

```js
const dn = new Intl.DisplayNames("pt", { type: "dateTimeField" });
console.log(dn.of("era")); // 'era'
console.log(dn.of("year")); // 'ano'
console.log(dn.of("month")); // 'mês'
console.log(dn.of("quarter")); // 'trimestre'
console.log(dn.of("weekOfYear")); // 'semana'
console.log(dn.of("weekday")); // 'dia da semana'
console.log(dn.of("dayPeriod")); // 'AM/PM'
console.log(dn.of("day")); // 'dia'
console.log(dn.of("hour")); // 'hora'
console.log(dn.of("minute")); // 'minuto'
console.log(dn.of("second")); // 'segundo'
```

### `calendar` type 사용하기

`calendar`을 type 옵션으로 사용하는 예제는 지역화 달력 이름 문자열을 반환합니다.

```js
const dn = new Intl.DisplayNames("en", { type: "calendar" });
console.log(dn.of("roc")); // 'Minguo Calendar'
console.log(dn.of("gregory")); // 'Gregorian Calendar'
console.log(dn.of("chinese")); // 'Chinese Calendar'
```

### `languageDisplay`와 함께 `language` type 사용하기

`languageDisplay` 옵션과 함께 `language`를 type으로 사용하는 예제입니다.

```js
// `dialect` 옵션 사용
const dnDialect = new Intl.DisplayNames("en", {
type: "language",
languageDisplay: "dialect",
});
console.log(dnDialect.of("en-GB")); // 'British English'

// `standard` 옵션 사용
const dnStd = new Intl.DisplayNames("en", {
type: "language",
languageDisplay: "standard",
});
console.log(dnStd.of("en-GB")); // 'English (United Kingdom)'
```

## 명세서

{{Specifications}}

## 브라우저 호환성

{{Compat}}

## 같이 보기

- {{jsxref("Intl.DisplayNames")}}
- {{jsxref("Intl.supportedValuesOf()")}}
- {{jsxref("Intl")}}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Intl.DisplayNames
slug: Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames
l10n:
sourceCommit: 77176b1f35f73f319bb5b959e5c90db8b5a0f9ea
sourceCommit: 6e93ec8fc9e1f3bd83bf2f77e84e1a39637734f8
---

{{JSRef}}
Expand All @@ -27,8 +27,8 @@ l10n:

- {{jsxref("Object/constructor", "Intl.DisplayNames.prototype.constructor")}}
- : 인스턴스 객체를 만든 생성자 함수입니다. `Intl.DisplayNames` 인스턴스의 경우 초기 값은 {{jsxref("Intl/DisplayNames/DisplayNames", "Intl.DisplayNames")}} 생성자입니다.
- `Intl.DisplayNames.prototype[@@toStringTag]`
- : [`@@toStringTag`](/ko/docs/Web/JavaScript/Reference/Global_Objects/Symbol/toStringTag) 속성의 초기 값은 문자열 `"Intl.DisplayNames"`입니다. 이 속성은 {{jsxref("Object.prototype.toString()")}}에서 사용됩니다.
- `Intl.DisplayNames.prototype[Symbol.toStringTag]`
- : [`Symbol.toStringTag`](/ko/docs/Web/JavaScript/Reference/Global_Objects/Symbol/toStringTag) 속성의 초기 값은 문자열 `"Intl.DisplayNames"`입니다. 이 속성은 {{jsxref("Object.prototype.toString()")}}에서 사용됩니다.

## 인스턴스 메서드

Expand Down
Original file line number Diff line number Diff line change
@@ -1,78 +1,66 @@
---
title: String.prototype.endsWith()
slug: Web/JavaScript/Reference/Global_Objects/String/endsWith
l10n:
sourceCommit: b7ca46c94631967ecd9ce0fe36579be334a01275
---

{{JSRef}}

The **`endsWith()`** 메서드를 사용하여 어떤 문자열에서 특정 문자열로 끝나는지를 확인할 수 있으며, 그 결과를 `true` 혹은 `false`로 반환한다.
{{jsxref("String")}} 값의 **`endsWith()`** 메서드는 문자열이 이 문자열의 문자로 끝나는지 여부를 결정하여 적절하게 `true` 또는 `false`를 반환합니다.

## 문법
{{EmbedInteractiveExample("pages/js/string-endswith.html")}}

```js
str.endsWith(searchString[, length])
## 구문

```js-nolint
endsWith(searchString)
endsWith(searchString, endPosition)
```

### 파라미터들
### 매개변수

- `searchString`
- : 이 문자열의 끝이 특정 문자열로 끝나는지를 찾기 원하는 문자열입니다.
- `length`
- : 옵션입니다. 찾고자 하는 문자열의 길이값이며, 기본값은 문자열 전체 길이입니다. 문자열의 길이값은 문자열 전체 길이 안에서만 존재하여야 합니다.
- : `str` 끝에서 검색할 문자. [정규 표현식이 될 수 없습니다](/ko/docs/Web/JavaScript/Reference/Global_Objects/RegExp#special_handling_for_regexes). 정규식이 아닌 모든 값은 [문자열로 강제 변환]되므로 이를 생략하거나 `undefined`를 전달하면 `endsWith()``"undefined"` 문자열을 검색하게 되는데, 이는 원하는 경우가 거의 없습니다.
- `endPosition` {{optional_inline}}
- : `searchString`이 발견될 것으로 예상되는 끝 위치(`searchString`의 마지막 문자의 인덱스에 1을 더한 값)입니다. 기본값은 `str.length`입니다.

### 반환 값

문자열의 끝이 주어진 문자열로 끝나면 **`true`**, 그렇지 않다면 **`false`**
`searchString`이 빈 문자열인 경우를 포함하여 문자열 끝에 주어진 문자가 있으면 **`true`**를 반환하고, 그렇지 않으면 **`false`**를 반환합니다.

### 예외

- {{jsxref("TypeError")}}
- : `searchString`[정규 표현식이라면](/ko/docs/Web/JavaScript/Reference/Global_Objects/RegExp#special_handling_for_regexes) 발생합니다.

## 설명

여러분은 이 메서드를 사용하여 어떤 문자열이 특정 문자열로 끝나는지를 확인할 수 있습니다.
이 메서드를 사용하면 문자열이 다른 문자열로 끝나는지 여부를 확인할 수 있습니다. 이 메서드는 대소문자를 구분합니다.

## 예제

### `endsWith()` 사용하기
### endsWith() 사용하기

```js
var str = "To be, or not to be, that is the question.";
const str = "To be, or not to be, that is the question.";

console.log(str.endsWith("question.")); // true
console.log(str.endsWith("to be")); // false
console.log(str.endsWith("to be", 19)); // true
```

## Polyfill

이 메서드는 ECMAScript 6 규격에 포함되었습니다만 아직까지는 모든 JavaScrpt가 이 기능을 지원하고 있지는 않습니다. 하지만 여러분은 `String.prototype.endsWith()` 메서드를 다음과 같이 쉽게 [polyfill](https://en.wikipedia.org/wiki/Polyfill) 할 수 있습니다:

```js
if (!String.prototype.endsWith) {
String.prototype.endsWith = function (searchString, position) {
var subjectString = this.toString();
if (
typeof position !== "number" ||
!isFinite(position) ||
Math.floor(position) !== position ||
position > subjectString.length
) {
position = subjectString.length;
}
position -= searchString.length;
var lastIndex = subjectString.indexOf(searchString, position);
return lastIndex !== -1 && lastIndex === position;
};
}
```

## 명세
## 명세서

{{Specifications}}

## 브라우저 호환성

{{Compat}}

## 관련문서
## 같이 보기

- [`core-js`에서의 `String.prototype.endsWith` 폴리필](https://github.com/zloirock/core-js#ecmascript-string-and-regexp)
- {{jsxref("String.prototype.startsWith()")}}
- {{jsxref("String.prototype.includes()")}}
- {{jsxref("String.prototype.indexOf()")}}
Expand Down

0 comments on commit 929eb5c

Please sign in to comment.