aboutsummaryrefslogtreecommitdiff
path: root/files/ko
diff options
context:
space:
mode:
authoralattalatta <urty5656@gmail.com>2021-06-08 22:47:21 +0900
committerGitHub <noreply@github.com>2021-06-08 22:47:21 +0900
commit943beeb7d631794a1feced4baf962fdd3a35fe08 (patch)
treec9940d671297cdf9d9f064141d2f3c99b95d29ff /files/ko
parentbd2e1fb8ee63eba2325418130231cc3add0adc69 (diff)
downloadtranslated-content-943beeb7d631794a1feced4baf962fdd3a35fe08.tar.gz
translated-content-943beeb7d631794a1feced4baf962fdd3a35fe08.tar.bz2
translated-content-943beeb7d631794a1feced4baf962fdd3a35fe08.zip
[ko] Add Date() constructor (#992)
Diffstat (limited to 'files/ko')
-rw-r--r--files/ko/_redirects.txt2
-rw-r--r--files/ko/conflicting/web/javascript/reference/global_objects/date/index.html184
-rw-r--r--files/ko/web/javascript/reference/global_objects/date/date/index.html205
-rw-r--r--files/ko/web/javascript/reference/global_objects/date/index.html433
4 files changed, 466 insertions, 358 deletions
diff --git a/files/ko/_redirects.txt b/files/ko/_redirects.txt
index 98adea837f..c90cff6132 100644
--- a/files/ko/_redirects.txt
+++ b/files/ko/_redirects.txt
@@ -890,7 +890,7 @@
/ko/docs/Web/JavaScript/Reference/Global_Objects/Boolean/constructor /ko/docs/Web/JavaScript/Reference/Global_Objects/Boolean
/ko/docs/Web/JavaScript/Reference/Global_Objects/Boolean/prototype /ko/docs/conflicting/Web/JavaScript/Reference/Global_Objects/Boolean
/ko/docs/Web/JavaScript/Reference/Global_Objects/Date/constructor /ko/docs/Web/JavaScript/Reference/Global_Objects/Date
-/ko/docs/Web/JavaScript/Reference/Global_Objects/Date/prototype /ko/docs/conflicting/Web/JavaScript/Reference/Global_Objects/Date
+/ko/docs/Web/JavaScript/Reference/Global_Objects/Date/prototype /ko/docs/Web/JavaScript/Reference/Global_Objects/Date
/ko/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat /ko/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat
/ko/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat/prototype /ko/docs/conflicting/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat
/ko/docs/Web/JavaScript/Reference/Global_Objects/Function/prototype /ko/docs/Web/JavaScript/Reference/Global_Objects/Function
diff --git a/files/ko/conflicting/web/javascript/reference/global_objects/date/index.html b/files/ko/conflicting/web/javascript/reference/global_objects/date/index.html
deleted file mode 100644
index 4b84cc87cf..0000000000
--- a/files/ko/conflicting/web/javascript/reference/global_objects/date/index.html
+++ /dev/null
@@ -1,184 +0,0 @@
----
-title: Date.prototype
-slug: conflicting/Web/JavaScript/Reference/Global_Objects/Date
-tags:
- - Date
- - JavaScript
- - Property
- - Prototype
- - Reference
-translation_of: Web/JavaScript/Reference/Global_Objects/Date
-translation_of_original: Web/JavaScript/Reference/Global_Objects/Date/prototype
-original_slug: Web/JavaScript/Reference/Global_Objects/Date/prototype
----
-<div>{{JSRef}}</div>
-
-<p><strong><code>Date.prototype</code></strong> 속성은 {{jsxref("Date")}} 생성자의 프로토타입을 나타냅니다.</p>
-
-<div>{{js_property_attributes(0, 0, 1)}}</div>
-
-<h2 id="설명">설명</h2>
-
-<p>JavaScript {{jsxref("Date")}} 인스턴스는 <code>Date.prototype</code>을 상속합니다. 생성자의 프로토타입을 변경해 모든 <code>Date</code> 인스턴스의 속성과 메서드를 수정할 수 있습니다.</p>
-
-<p>2000년대 달력과의 호환성을 위해 연도는 언제나 완전하게 네 자리 숫자로 작성해야 합니다. 즉 98 대신 1998이 올바른 작성법입니다. <code>Date</code>는 완전한 연도 설정에 도움이 될 {{jsxref("Date.prototype.getFullYear()", "getFullYear()")}}, {{jsxref("Date.prototype.setFullYear()", "setFullYear()")}}, {{jsxref("Date.prototype.getUTCFullYear()", "getUTCFullYear()")}}, {{jsxref("Date.prototype.setUTCFullYear()", "setUTCFullYear()")}} 메서드를 가지고 있습니다.</p>
-
-<p>ECMAScript 6부터 <code>Date.prototype</code>은 {{jsxref("Date")}} 인스턴스가 아닌 평범한 객체입니다.</p>
-
-<h2 id="속성">속성</h2>
-
-<dl>
- <dt><code>Date.prototype.constructor</code></dt>
- <dd>인스턴스 생성에 사용한 생성자를 반환합니다. 기본값은 {{jsxref("Date")}}입니다.</dd>
-</dl>
-
-<h2 id="메서드">메서드</h2>
-
-<h3 id="접근자">접근자</h3>
-
-<dl>
- <dt>{{jsxref("Date.prototype.getDate()")}}</dt>
- <dd>주어진 날짜의 일(1-31)을 현지 시간에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getDay()")}}</dt>
- <dd>주어진 날짜의 요일(0-6)을 현지 시간에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getFullYear()")}}</dt>
- <dd>주어진 날짜의 연도(4자리 수)를 현지 시간에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getHours()")}}</dt>
- <dd>주어진 날짜의 시(0-23)를 현지 시간에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getMilliseconds()")}}</dt>
- <dd>주어진 날짜의 밀리초(0-999)를 현지 시간에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getMinutes()")}}</dt>
- <dd>주어진 날짜의 분(0-59)을 현지 시간에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getMonth()")}}</dt>
- <dd>주어진 날짜의 월(0-11)을 현지 시간에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getSeconds()")}}</dt>
- <dd>주어진 날짜의 초(0-59)를 현지 시간에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getTime()")}}</dt>
- <dd>주어진 날짜와 1970년 1월 1일 0시 0분(UTC)의 차이를 밀리초로 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getTimezoneOffset()")}}</dt>
- <dd>현재 로케일의 시간대 차이를 분으로 환산해 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getUTCDate()")}}</dt>
- <dd>주어진 날짜의 일(1-31)을 UTC에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getUTCDay()")}}</dt>
- <dd>주어진 날짜의 요일(0-6)을 UTC에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getUTCFullYear()")}}</dt>
- <dd>주어진 날짜의 연도(4자리 수)를 UTC에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getUTCHours()")}}</dt>
- <dd>주어진 날짜의 시(0-23)를 UTC에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getUTCMilliseconds()")}}</dt>
- <dd>주어진 날짜의 밀리초(0-999)를 UTC에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getUTCMinutes()")}}</dt>
- <dd>주어진 날짜의 분(0-59)을 UTC에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getUTCMonth()")}}</dt>
- <dd>주어진 날짜의 월(0-11)을 UTC에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getUTCSeconds()")}}</dt>
- <dd>주어진 날짜의 초(0-59)를 UTC에 맞춰 반환합니다.</dd>
- <dt>{{jsxref("Date.prototype.getYear()")}} {{deprecated_inline}}</dt>
- <dd>주어진 날짜의 연도(주로 두세자리 숫자)를 현지 시간에 맞춰 반환합니다. {{jsxref("Date.prototype.getFullYear()", "getFullYear()")}}를 사용하세요.</dd>
-</dl>
-
-<h3 id="설정자">설정자</h3>
-
-<dl>
- <dt>{{jsxref("Date.prototype.setDate()")}}</dt>
- <dd>Sets the day of the month for a specified date according to local time.</dd>
- <dt>{{jsxref("Date.prototype.setFullYear()")}}</dt>
- <dd>Sets the full year (e.g. 4 digits for 4-digit years) for a specified date according to local time.</dd>
- <dt>{{jsxref("Date.prototype.setHours()")}}</dt>
- <dd>Sets the hours for a specified date according to local time.</dd>
- <dt>{{jsxref("Date.prototype.setMilliseconds()")}}</dt>
- <dd>Sets the milliseconds for a specified date according to local time.</dd>
- <dt>{{jsxref("Date.prototype.setMinutes()")}}</dt>
- <dd>Sets the minutes for a specified date according to local time.</dd>
- <dt>{{jsxref("Date.prototype.setMonth()")}}</dt>
- <dd>Sets the month for a specified date according to local time.</dd>
- <dt>{{jsxref("Date.prototype.setSeconds()")}}</dt>
- <dd>Sets the seconds for a specified date according to local time.</dd>
- <dt>{{jsxref("Date.prototype.setTime()")}}</dt>
- <dd>Sets the {{jsxref("Date")}} object to the time represented by a number of milliseconds since January 1, 1970, 00:00:00 UTC, allowing for negative numbers for times prior.</dd>
- <dt>{{jsxref("Date.prototype.setUTCDate()")}}</dt>
- <dd>Sets the day of the month for a specified date according to universal time.</dd>
- <dt>{{jsxref("Date.prototype.setUTCFullYear()")}}</dt>
- <dd>Sets the full year (e.g. 4 digits for 4-digit years) for a specified date according to universal time.</dd>
- <dt>{{jsxref("Date.prototype.setUTCHours()")}}</dt>
- <dd>Sets the hour for a specified date according to universal time.</dd>
- <dt>{{jsxref("Date.prototype.setUTCMilliseconds()")}}</dt>
- <dd>Sets the milliseconds for a specified date according to universal time.</dd>
- <dt>{{jsxref("Date.prototype.setUTCMinutes()")}}</dt>
- <dd>Sets the minutes for a specified date according to universal time.</dd>
- <dt>{{jsxref("Date.prototype.setUTCMonth()")}}</dt>
- <dd>Sets the month for a specified date according to universal time.</dd>
- <dt>{{jsxref("Date.prototype.setUTCSeconds()")}}</dt>
- <dd>Sets the seconds for a specified date according to universal time.</dd>
- <dt>{{jsxref("Date.prototype.setYear()")}} {{deprecated_inline}}</dt>
- <dd>Sets the year (usually 2-3 digits) for a specified date according to local time. Use {{jsxref("Date.prototype.setFullYear()", "setFullYear()")}} instead.</dd>
-</dl>
-
-<h3 id="변환_접근자">변환 접근자</h3>
-
-<dl>
- <dt>{{jsxref("Date.prototype.toDateString()")}}</dt>
- <dd>Returns the "date" portion of the {{jsxref("Date")}} as a human-readable string like 'Thu Apr 12 2018'</dd>
- <dt>{{jsxref("Date.prototype.toISOString()")}}</dt>
- <dd>Converts a date to a string following the ISO 8601 Extended Format.</dd>
- <dt>{{jsxref("Date.prototype.toJSON()")}}</dt>
- <dd>Returns a string representing the {{jsxref("Date")}} using {{jsxref("Date.prototype.toISOString()", "toISOString()")}}. Intended for use by {{jsxref("JSON.stringify()")}}.</dd>
- <dt>{{jsxref("Date.prototype.toGMTString()")}} {{deprecated_inline}}</dt>
- <dd>Returns a string representing the {{jsxref("Date")}} based on the GMT (UT) time zone. Use {{jsxref("Date.prototype.toUTCString()", "toUTCString()")}} instead.</dd>
- <dt>{{jsxref("Date.prototype.toLocaleDateString()")}}</dt>
- <dd>Returns a string with a locality sensitive representation of the date portion of this date based on system settings.</dd>
- <dt>{{jsxref("Date.prototype.toLocaleFormat()")}} {{non-standard_inline}}</dt>
- <dd>Converts a date to a string, using a format string.</dd>
- <dt>{{jsxref("Date.prototype.toLocaleString()")}}</dt>
- <dd>Returns a string with a locality sensitive representation of this date. Overrides the {{jsxref("Object.prototype.toLocaleString()")}} method.</dd>
- <dt>{{jsxref("Date.prototype.toLocaleTimeString()")}}</dt>
- <dd>Returns a string with a locality sensitive representation of the time portion of this date based on system settings.</dd>
- <dt>{{jsxref("Date.prototype.toSource()")}} {{non-standard_inline}}</dt>
- <dd>Returns a string representing the source for an equivalent {{jsxref("Date")}} object; you can use this value to create a new object. Overrides the {{jsxref("Object.prototype.toSource()")}} method.</dd>
- <dt>{{jsxref("Date.prototype.toString()")}}</dt>
- <dd>Returns a string representing the specified {{jsxref("Date")}} object. Overrides the {{jsxref("Object.prototype.toString()")}} method.</dd>
- <dt>{{jsxref("Date.prototype.toTimeString()")}}</dt>
- <dd>Returns the "time" portion of the {{jsxref("Date")}} as a human-readable string.</dd>
- <dt>{{jsxref("Date.prototype.toUTCString()")}}</dt>
- <dd>Converts a date to a string using the UTC timezone.</dd>
- <dt>{{jsxref("Date.prototype.valueOf()")}}</dt>
- <dd>Returns the primitive value of a {{jsxref("Date")}} object. Overrides the {{jsxref("Object.prototype.valueOf()")}} method.</dd>
-</dl>
-
-<h2 id="명세">명세</h2>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <th scope="col">Specification</th>
- <th scope="col">Status</th>
- <th scope="col">Comment</th>
- </tr>
- <tr>
- <td>{{SpecName('ES1')}}</td>
- <td>{{Spec2('ES1')}}</td>
- <td>Initial definition. Implemented in JavaScript 1.1.</td>
- </tr>
- <tr>
- <td>{{SpecName('ES5.1', '#sec-15.9.5', 'Date.prototype')}}</td>
- <td>{{Spec2('ES5.1')}}</td>
- <td> </td>
- </tr>
- <tr>
- <td>{{SpecName('ES6', '#sec-properties-of-the-date-prototype-object', 'Date.prototype')}}</td>
- <td>{{Spec2('ES6')}}</td>
- <td> </td>
- </tr>
- <tr>
- <td>{{SpecName('ESDraft', '#sec-properties-of-the-date-prototype-object', 'Date.prototype')}}</td>
- <td>{{Spec2('ESDraft')}}</td>
- <td> </td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="브라우저_호환성">브라우저 호환성</h2>
-
-<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p>
-
-<p>{{Compat("javascript.builtins.Date.prototype")}}</p>
diff --git a/files/ko/web/javascript/reference/global_objects/date/date/index.html b/files/ko/web/javascript/reference/global_objects/date/date/index.html
new file mode 100644
index 0000000000..08e2410310
--- /dev/null
+++ b/files/ko/web/javascript/reference/global_objects/date/date/index.html
@@ -0,0 +1,205 @@
+---
+title: Date() 생성자
+slug: Web/JavaScript/Reference/Global_Objects/Date/Date
+tags:
+ - Constructor
+ - Date
+ - JavaScript
+ - Reference
+translation_of: Web/JavaScript/Reference/Global_Objects/Date/Date
+browser-compat: javascript.builtins.Date.Date
+---
+
+<div>{{JSRef}}</div>
+
+<p>
+ <strong><code>Date</code></strong> 생성자는 시간의 특정 지점을 나타내는 <code>Date</code> 객체를 플랫폼에 종속되지 않는 형태로 생성합니다.
+ <code>Date</code> 객체는 1970년 1월 1일 UTC(국제표준시) 자정으로부터 지난 시간을 밀리초로 나타내는 UNIX 타임스탬프를
+ 담습니다.
+</p>
+
+<div>{{EmbedInteractiveExample("pages/js/date-constructor.html")}}</div>
+
+<h2 id="syntax">구문</h2>
+
+<pre class="brush: js">
+new Date()
+new Date(value)
+new Date(dateString)
+
+new Date(year, monthIndex)
+new Date(year, monthIndex, day)
+new Date(year, monthIndex, day, hours)
+new Date(year, monthIndex, day, hours, minutes)
+new Date(year, monthIndex, day, hours, minutes, seconds)
+new Date(year, monthIndex, day, hours, minutes, seconds, milliseconds)
+</pre>
+
+<div class="notecard note">
+ <p>
+ <strong>참고:</strong> 새로운 <code>Date</code> 객체를 생성하는 방법은 {{jsxref("operators/new", "new")}} 연산자를
+ 사용하는 것이 유일합니다. <code>now = Date()</code>처럼 <code>Date</code>를 직접 호출하면 새로운
+ <code>Date</code> 객체가 아니라 문자열을 반환합니다.
+ </p>
+</div>
+
+<h3 id="parameters">매개변수</h3>
+
+<p><code>Date()</code> 생성자는 네 가지 형태로 사용할 수 있습니다.</p>
+
+<ol>
+ <li>
+ <h4 id="no_parameters">매개변수 없음</h4>
+
+ <p>
+ 매개변수를 제공하지 않으면, 생성 순간의 날짜와 시간을 나타내는
+ <code>Date</code> 객체를 생성합니다.
+ </p>
+ </li>
+ <li>
+ <h4 id="time_value_or_timestamp_number">UNIX 타임스탬프 값</h4>
+
+ <dl>
+ <dt>
+ <code><var>value</var></code>
+ </dt>
+ <dd>
+ <a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_16">UNIX 타임스탬프</a>,
+ 즉 1970년 1월 1일 00:00:00 UTC(UNIX 시간)부터의 시간을 밀리초 단위로 표현하되 윤초는 무시한 정수 값입니다.
+ 대부분의 UNIX 타임스탬프 함수는 초 단위까지만 정확함을 유의하세요.
+ </dd>
+ </dl>
+ </li>
+ <li>
+ <h4 id="timestamp_string">타임스탬프 문자열</h4>
+
+ <dl>
+ <dt>
+ <code><var>dateString</var></code>
+ </dt>
+ <dd>
+ {{jsxref("Date.parse()")}} 메서드가 인식할 수 있는 형태로 나타낸 날짜 문자열입니다.
+ <a href="https://datatracker.ietf.org/doc/html/rfc2822#page-14">IETF 호환 RFC 2822 타임스탬프</a>와,
+ <a href="https://www.ecma-international.org/ecma-262/11.0/#sec-date.parse">ISO8601의 특정 버전</a>을 인식할 수
+ 있습니다.
+ <div class="notecard note">
+ <p>
+ <strong>참고:</strong> <code>Date</code> 생성자(및 동일한 동작의 <code>Date.parse()</code>)를 사용한 날짜
+ 파싱은 동작이 일관적이지 못하고 브라우저끼리 차이가 존재하므로 사용하지 않는 것이 좋습니다.
+ </p>
+
+ <ul>
+ <li>
+ <a href="https://datatracker.ietf.org/doc/html/rfc2822">RFC 2822</a>
+ 형식 문자열은 관례적으로만 지원하는 것 뿐입니다.
+ </li>
+ <li>
+ ISO 8601 형식 문자열은 시간 정보 없는 문자열(<code>"1970-01-01"</code>
+ 등)을 현지 시간이 아닌 UTC 기준으로 처리하는 점에서 표준과 다릅니다.
+ </li>
+ </ul>
+ </div>
+ </dd>
+ </dl>
+ </li>
+ <li>
+ <h4 id="individual_date_and_time_component_values">개별 날짜 및 시간 구성 요소</h4>
+
+ <p>
+ 최소한 연도와 월이 주어졌을 때, <code>Date()</code>의 이 형태는 <code>Date</code> 객체를 생성할 때 모든 구성
+ 요소(연, 월, 일, 시, 분, 초, 밀리초)를 모두 매개변수에서 가져옵니다. 누락한 요소에는 가장 낮은
+ 값(<code>day</code>는 1, 나머지는 0)을 사용합니다. 모든 매개변수 값은 UTC가 아닌 현지 시간으로 취급합니다.
+ </p>
+
+ <dl>
+ <dt>
+ <code><var>year</var></code>
+ </dt>
+ <dd>
+ <p>연도를 나타내는 정수 값입니다.</p>
+
+ <p>
+ <code>0</code>부터 <code>99</code>까지는 <code>1900</code>부터 <code>1999</code>로 처리합니다. 다른 모든 값은
+ 그대로 사용합니다.
+ <a href="/ko/docs/Web/JavaScript/Reference/Global_Objects/Date#two_digit_years_map_to_1900_%E2%80%93_1999"
+ >예제</a
+ >를 참고하세요.
+ </p>
+ </dd>
+ <dt>
+ <code><var>monthIndex</var></code>
+ </dt>
+ <dd>
+ 월을 나타내는 정수 값입니다. 1월을 나타내는 <code>0</code>부터 12월을 나타내는 <code>11</code>까지 사용할 수
+ 있습니다.
+ </dd>
+ <dt>
+ <code><var>day</var></code> {{optional_inline}}
+ </dt>
+ <dd>일을 나타내는 정수 값입니다. 기본값은 <code>1</code>입니다.</dd>
+ <dt>
+ <code><var>hours</var></code> {{optional_inline}}
+ </dt>
+ <dd>
+ 시를 나타내는 정수 값입니다. 기본 값은 자정을 나타내는
+ <code>0</code>입니다.
+ </dd>
+ <dt>
+ <code><var>minutes</var></code> {{optional_inline}}
+ </dt>
+ <dd>
+ 분을 나타내는 정수 값입니다. 기본 값은 정각을 나타내는
+ <code>0</code>입니다.
+ </dd>
+ <dt>
+ <code><var>seconds</var></code> {{optional_inline}}
+ </dt>
+ <dd>
+ 초를 나타내는 정수 값입니다. 기본 값은
+ <code>0</code>초입니다.
+ </dd>
+ <dt>
+ <code><var>milliseconds</var></code> {{optional_inline}}
+ </dt>
+ <dd>
+ 밀리초를 나타내는 정수 값입니다. 기본 값은
+ <code>0</code>밀리초입니다.
+ </dd>
+ </dl>
+ </li>
+</ol>
+
+<h2 id="examples">예제</h2>
+
+<h3 id="several_ways_to_create_a_date_object">Date 객체를 만드는 여러가지 방법</h3>
+
+<p>아래 예제는 JavaScript 날짜를 생성하는 몇 가지 방법을 보입니다.</p>
+
+<div class="note">
+ <p>
+ <strong>참고:</strong> <code>Date</code> 생성자(및 동일한 동작의 <code>Date.parse()</code>)를 사용한 날짜 파싱은
+ 동작이 일관적이지 못하고 브라우저끼리 차이가 존재하므로 사용하지 않는 것이 좋습니다.
+ </p>
+</div>
+
+<pre class="brush: js">
+let today = new Date()
+let birthday = new Date('December 17, 1995 03:24:00')
+let birthday = new Date('1995-12-17T03:24:00')
+let birthday = new Date(1995, 11, 17) // 월은 0부터 시작
+let birthday = new Date(1995, 11, 17, 3, 24, 0)</pre
+>
+
+<h2 id="specifications">명세</h2>
+
+{{Specifications}}
+
+<h2 id="browser_compatibility">브라우저 호환성</h2>
+
+<p>{{Compat}}</p>
+
+<h2 id="See_also">같이 보기</h2>
+
+<ul>
+ <li>{{jsxref("Date")}}</li>
+</ul>
diff --git a/files/ko/web/javascript/reference/global_objects/date/index.html b/files/ko/web/javascript/reference/global_objects/date/index.html
index d9cf05bbdb..54c5f9fa44 100644
--- a/files/ko/web/javascript/reference/global_objects/date/index.html
+++ b/files/ko/web/javascript/reference/global_objects/date/index.html
@@ -2,238 +2,325 @@
title: Date
slug: Web/JavaScript/Reference/Global_Objects/Date
tags:
- - Constructor
+ - Class
- Date
- JavaScript
- Reference
- 날짜
- 시간
translation_of: Web/JavaScript/Reference/Global_Objects/Date
+browser-compat: javascript.builtins.Date
---
-<div>{{JSRef}}</div>
-
-<p><span class="seoSummary"><strong><code>Date</code></strong> 생성자는 시간의 특정 지점을 나타내는 <code>Date</code> 객체를 생성합니다.</span> <code>Date</code> 객체는 1970년 1월 1일 UTC(국제표준시) 00:00으로부터 지난 시간을 밀리초로 나타내는 <a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_16">유닉스 타임스탬프</a>를 사용합니다.</p>
-
-<div>{{EmbedInteractiveExample("pages/js/date-constructor.html")}}</div>
-
-
-<h2 id=".EC.83.9D.EC.84.B1" name=".EC.83.9D.EC.84.B1"><code>Date</code> 객체 초기화</h2>
+<div>{{JSRef}}</div>
-<p>JavaScript Date 객체를 생성하는 법은 {{jsxref("new")}} 연산자를 사용하는 것이 유일합니다.</p>
+<p>
+ JavaScript <strong><code>Date</code></strong> 객체는 시간의 한 점을 플랫폼에 종속되지 않는 형태로 나타냅니다.
+ <code>Date</code> 객체는 1970년 1월 1일 UTC(협정 세계시) 자정과의 시간 차이를 밀리초로 나타내는 정수 값을 담습니다.
+</p>
+
+<div class="notecard note">
+ <p>
+ <strong>참고:</strong> TC39에서 새로운 날짜/시간 API인
+ <a href="https://tc39.es/proposal-temporal/docs/index.html">Temporal</a>을 작업 중입니다.
+ <a href="https://blogs.igalia.com/compilers/2020/06/23/dates-and-times-in-javascript/">Igalia 블로그</a>에서 더
+ 알아보세요. 아직 프로덕션에는 적합하지 않습니다!
+ </p>
+</div>
-<pre class="brush: js">let now = new Date();</pre>
+<h2 id="description">설명</h2>
-<p>단순히 {{jsxref("Date", "Date")}} 객체를 직접 호출했을 때, 반환 값은 <code>Date</code> 객체가 아니라 날짜를 나타낸 문자열입니다. JavaScript는 <code>Date</code> 리터럴 구문이 없습니다.</p>
+<h3 id="the_ecmascript_epoch_and_timestamps">ECMAScript 시간과 타임스탬프</h3>
-<h2 id=".EC.83.9D.EC.84.B1" name=".EC.83.9D.EC.84.B1">구문</h2>
+<p>
+ JavaScript 날짜의 기반은 1970년 1월 1일 UTC 자정과의 시간 차이를 밀리초 단위로 나타낸 것으로, 날짜와 시간의 컴퓨터
+ 기록물을 대부분 차지하고 있는 <strong>UNIX 시간</strong>(UNIX epoch, 1970년 1월 1일 자정과의 시간 차이를 초 단위로
+ 나타냄)과는 다릅니다.
+</p>
-<pre class="syntaxbox">new Date();
-new Date(<var>value</var>);
-new Date(<var>dateString</var>);
-new Date(<var>year</var>, <var>monthIndex</var>[, <var>day</var>[, <var>hour</var>[, <var>minutes</var>[, <var>seconds</var>[, <var>milliseconds</var>]]]]]);
-</pre>
+<div class="blockIndicator note">
+ <p>
+ <strong>참고:</strong> <code>Date</code> 객체의 중심을 구성하는 시간 값은 UTC 기준이지만, 날짜와 시간 등 구성 요소를
+ 가져오는 메서드는 모두 현지(호스트 시스템의 위치)의 시간대를 사용한다는 것을 기억해야 합니다.
+ </p>
+</div>
-<h3 id=".ED.8C.8C.EB.9D.BC.EB.AF.B8.ED.84.B0" name=".ED.8C.8C.EB.9D.BC.EB.AF.B8.ED.84.B0">매개변수</h3>
+<p>
+ <code>Date</code>의 최대 값은 JavaScript에서의 안전한 최대 정수와 같지 않습니다.
+ ({{jsxref("Number.MAX_SAFE_INTEGER")}}는 9,007,199,254,740,991입니다.) 대신, ECMA-262는 1970년 1월 1일 UTC에서
+ ±100,000,000일(1억일)을 표준 <code>Date</code> 객체의 최대 범위로 규정하고 있습니다. 이는 기원전 271821년 4월 20일부터
+ 서력 275760년 9월 13일까지에 해당하는 범위로, ±8,640,000,000,000,000 밀리초와 같습니다.
+</p>
-<p><code>Date()</code> 생성자는 네 가지 형태로 사용할 수 있습니다.</p>
+<h3 id="date_format_and_time_zone_conversions">날짜 형식과 시간대 변환</h3>
-<h4 id="매개변수_없음">매개변수 없음</h4>
+<p>
+ 날짜를 얻거나 시간대끼리 변환하는 메서드가 다수 존재하며, 그 중 특히 유용한 함수는 날짜 및 시간을 국제 표준 시간인
+ 협정 세계시(UTC)로 반환하는 함수입니다. (UTC는 그리니치 시간대라고도 불리는데, 기준 시간대가 영국의 런던 인근인
+ 그리니치를 지나는 경선이기 때문입니다.) 사용자의 장치는 현지 시간을 제공합니다.
+</p>
-<p>매개변수를 제공하지 않으면, 현지 시간으로 생성 순간의 날짜와 시간을 나타내는 <code>Date</code> 객체를 생성합니다.</p>
+<p>
+ {{jsxref("Date.getDay", "getDay()")}}와 {{jsxref("Date.setHours", "setHours()")}}처럼 구성 요소를 현지 시간 기준으로
+ 읽고 쓰는 메서드에는 {{jsxref("Date.getUTCDay", "getUTCDay()")}}와 {{jsxref("Date.setUTCHours", "setUTCHours()")}}처럼
+ UTC를 기준으로 하는 읽기/쓰기 메서드도 존재합니다.
+</p>
-<h4 id="유닉스_타임스탬프">유닉스 타임스탬프</h4>
+<h2 id="constructor">생성자</h2>
<dl>
- <dt><code>value</code></dt>
- <dd><a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_16">유닉스 타임스탬프</a>, 즉 1970년 1월 1일 00:00:00 UTC(유닉스 시간)부터의 시간을 밀리초 단위로 표현하되 윤초는 무시한 정숫값. 대부분의 유닉스 타임스탬프 함수는 초 단위까지만 정확함을 유의하세요.</dd>
- <dt>
- <h4 id="타임스탬프_문자열">타임스탬프 문자열</h4>
- </dt>
- <dt><code>dateString</code></dt>
- <dd>날짜를 표현하는 문자열값. {{jsxref("Date.parse()")}} 메서드가 인식할 수 있는 형식(<a href="http://tools.ietf.org/html/rfc2822#page-14">IETF 호환 RFC 2822 타임스탬프</a>와 <a href="http://www.ecma-international.org/ecma-262/5.1/#sec-15.9.1.15">ISO8601의 한 버전</a>)이어야 합니다
- <div class="note"><strong>참고</strong>: <code>Date</code> 생성자(와 <code>Date.parse</code>)를 사용해 날짜 문자열에서 시간을 알아내는건 하지 않는 것이 좋습니다. 브라우저 간 차이와 여러 비일관성이 존재하며 RFC 2822 규격 문자열의 지원은 관례일 뿐입니다. ISO 8601 규격 문자열은 시간 정보가 없을 때("1970-01-01" 등) 현지 시간이 아닌 UTC 기준으로 처리합니다.</div>
- </dd>
+ <dt>{{jsxref("Date/Date", "Date()")}}</dt>
+ <dd>
+ 함수로 호출할 경우 <code>new Date().toString()</code>과 동일하게 현재 날짜와 시간을 나타내는 문자열을 반환합니다.
+ </dd>
+ <dt>{{jsxref("Date/Date", "new Date()")}}</dt>
+ <dd>생성자로 호출할 경우 새로운 <code>Date</code> 객체를 반환합니다.</dd>
</dl>
-<h4 id="개별_날짜_및_시간_구성_요소">개별 날짜 및 시간 구성 요소</h4>
-
-<p>적어도 연도와 월이 주어지면, 자신의 구성 요소(연, 월, 일, 시, 분, 초, 밀리초)를 모두 매개변수의 값에서 가져오는 <code>Date</code> 객체를 생성합니다. 누락한 요소에는 가장 낮은 값(<code>day</code>는 1, 나머지는 0)을 사용합니다.</p>
+<h2 id="static_methods">정적 메서드</h2>
<dl>
- <dt><code>year</code></dt>
- <dd>연도를 나타내는 정숫값. 0부터 99는 1900부터 1999로 처리합니다. {{anch("두 자리 연도는 1900년대로", "아래 예제")}}를 참고하세요.</dd>
- <dt><code>monthIndex</code></dt>
- <dd>월을 나타내는 정숫값. 0은 1월을 나타내고 11은 12월을 나타냅니다.</dd>
- <dt><code>day</code> {{optional_inline}}</dt>
- <dd>일을 나타내는 정숫값. 기본값은 1입니다.</dd>
- <dt><code>hours</code> {{optional_inline}}</dt>
- <dd>시를 나타내는 정숫값. 기본값은 0(자정)입니다.</dd>
+ <dt>{{jsxref("Date.now()")}}</dt>
+ <dd>1970년 1월 1일 00:00:00 UTC로부터 지난 시간을 밀리초 단위의 숫자 값으로 반환합니다. 윤초는 무시합니다.</dd>
+ <dt>{{jsxref("Date.parse()")}}</dt>
+ <dd>
+ 날짜를 나타내는 문자열을 분석한 후, 해당 날짜와 1970년 1월 1일 00:00:00 UTC의 시간 차이를 밀리초 단위의 숫자 값으로
+ 반환합니다.
+ <div class="notecard note">
+ <p>
+ <strong>참고:</strong> <code>Date.parse()</code>를 사용한 날짜 분석은 브라우저 간 차이 및 일관적이지 못한 동작을
+ 가지고 있으므로 사용하지 않는 것이 좋습니다.
+ </p>
+ </div>
+ </dd>
+ <dt>{{jsxref("Date.UTC()")}}</dt>
+ <dd>
+ 생성자가 받을 수 있는 제일 많은 매개변수(구성요소 각각, 2개 ~ 7개)를 동일하게 받아서, 1970년 1월 1일 00:00:00 UTC의
+ 시간 차이를 밀리초 단위의 숫자 값으로 반환합니다. 윤초는 무시합니다.
+ </dd>
</dl>
+<h2 id="instance_methods">인스턴스 메서드</h2>
+
<dl>
- <dt><code>minutes</code> {{optional_inline}}</dt>
- <dd>분을 나타내는 정숫값. 기본값은 0분입니다.</dd>
- <dt><code>seconds</code> {{optional_inline}}</dt>
- <dd>초를 나타내는 정숫값. 기본값은 0초입니다.</dd>
- <dt><code>milliseconds</code> {{optional_inline}}</dt>
- <dd>밀리초를 나타내는 정숫값. 기본값은 0밀리초입니다.</dd>
+ <dt>{{jsxref("Date.prototype.getDate()")}}</dt>
+ <dd><code>Date</code>에서 현지 시간 기준 일(<code>1</code>–<code>31</code>)을 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getDay()")}}</dt>
+ <dd><code>Date</code>에서 현지 시간 기준 요일(<code>0</code>–<code>6</code>)을 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getFullYear()")}}</dt>
+ <dd><code>Date</code>에서 현지 시간 기준 연도(네 자리 연도면 네 자리로)를 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getHours()")}}</dt>
+ <dd><code>Date</code>에서 현지 시간 기준 시(<code>0</code>–<code>23</code>)를 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getMilliseconds()")}}</dt>
+ <dd><code>Date</code>에서 현지 시간 기준 밀리초(<code>0</code>–<code>999</code>)를 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getMinutes()")}}</dt>
+ <dd><code>Date</code>에서 현지 시간 기준 분(<code>0</code>–<code>59</code>)을 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getMonth()")}}</dt>
+ <dd><code>Date</code>에서 현지 시간 기준 월(<code>0</code>–<code>11</code>)을 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getSeconds()")}}</dt>
+ <dd><code>Date</code>에서 현지 시간 기준 초(<code>0</code>–<code>59</code>)를 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getTime()")}}</dt>
+ <dd>
+ 1970년 1월 1일 00:00:00 UTC로부터의 경과시간을 밀리초 단위로 반환합니다. <code>Date</code>가 기준
+ 시간 이전을 나타낼 경우 음수 값을 반환합니다.
+ </dd>
+ <dt>{{jsxref("Date.prototype.getTimezoneOffset()")}}</dt>
+ <dd>현지 시간대와 UTC의 차이를 분 단위로 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getUTCDate()")}}</dt>
+ <dd><code>Date</code>에서 국제 시간 기준 일(<code>1</code>–<code>31</code>)을 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getUTCDay()")}}</dt>
+ <dd><code>Date</code>에서 국제 시간 기준 요일(<code>0</code>–<code>6</code>)을 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getUTCFullYear()")}}</dt>
+ <dd><code>Date</code>에서 국제 시간 기준 연도(네 자리 연도면 네 자리로)를 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getUTCHours()")}}</dt>
+ <dd><code>Date</code>에서 국제 시간 기준 시(<code>0</code>–<code>23</code>)를 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getUTCMilliseconds()")}}</dt>
+ <dd><code>Date</code>에서 국제 시간 기준 밀리초(<code>0</code>–<code>999</code>)를 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getUTCMinutes()")}}</dt>
+ <dd><code>Date</code>에서 국제 시간 기준 분(<code>0</code>–<code>59</code>)을 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getUTCMonth()")}}</dt>
+ <dd><code>Date</code>에서 국제 시간 기준 월(<code>0</code>–<code>11</code>)을 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.getUTCSeconds()")}}</dt>
+ <dd><code>Date</code>에서 국제 시간 기준 초(<code>0</code>–<code>59</code>)를 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setDate()")}}</dt>
+ <dd>현지 시간 기준으로 일을 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setFullYear()")}}</dt>
+ <dd>현지 시간 기준으로 연도(네 자리 연도면 네 자리로)를 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setHours()")}}</dt>
+ <dd>현지 시간 기준으로 시를 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setMilliseconds()")}}</dt>
+ <dd>현지 시간 기준으로 밀리초를 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setMinutes()")}}</dt>
+ <dd>현지 시간 기준으로 분을 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setMonth()")}}</dt>
+ <dd>현지 시간 기준으로 월을 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setSeconds()")}}</dt>
+ <dd>현지 시간 기준으로 초를 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setTime()")}}</dt>
+ <dd>
+ <code>Date</code>가 나타낼 시간을 1970년 1월 1일 00:00:00 UTC로부터의 경과시간(밀리초)으로 설정합니다. 기준 이전의 시간은 음수 값을 사용해 설정할 수 있습니다.
+ </dd>
+ <dt>{{jsxref("Date.prototype.setUTCDate()")}}</dt>
+ <dd>국제 시간 기준으로 일을 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setUTCFullYear()")}}</dt>
+ <dd>국제 시간 기준으로 연도(네 자리 연도면 네 자리로)를 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setUTCHours()")}}</dt>
+ <dd>국제 시간 기준으로 시를 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setUTCMilliseconds()")}}</dt>
+ <dd>국제 시간 기준으로 밀리초를 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setUTCMinutes()")}}</dt>
+ <dd>국제 시간 기준으로 분을 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setUTCMonth()")}}</dt>
+ <dd>국제 시간 기준으로 월을 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.setUTCSeconds()")}}</dt>
+ <dd>국제 시간 기준으로 초를 설정합니다.</dd>
+ <dt>{{jsxref("Date.prototype.toDateString()")}}</dt>
+ <dd><code>Date</code>의 날짜 부분만 나타내는, 사람이 읽을 수 있는 문자열을 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.toISOString()")}}</dt>
+ <dd><code>Date</code>를 나타내는 문자열을 ISO 8601 확장 형식에 맞춰 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.toJSON()")}}</dt>
+ <dd>
+ {{jsxref("Date.prototype.toISOString()", "toISOString()")}}을 사용해서 {{jsxref("Date")}}를 나타내는 문자열을
+ 반환합니다. {{jsxref("JSON.stringify()")}}에서 사용합니다.
+ </dd>
+ <dt>{{jsxref("Date.prototype.toLocaleDateString()")}}</dt>
+ <dd><code>Date</code>의 날짜 부분을 나타내는 문자열을 시스템에 설정된 현재 지역의 형식으로 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.toLocaleFormat()")}}</dt>
+ <dd>형식 문자열을 사용해서 <code>Date</code>를 나타내는 문자열을 생성합니다.</dd>
+ <dt>{{jsxref("Date.prototype.toLocaleString()")}}</dt>
+ <dd>
+ <code>Date</code>를 나타내는 문자열을 현재 지역의 형식으로 반환합니다.
+ {{jsxref("Object.prototype.toLocaleString()")}} 메서드를 재정의합니다.
+ </dd>
+ <dt>{{jsxref("Date.prototype.toLocaleTimeString()")}}</dt>
+ <dd><code>Date</code>의 시간 부분을 나타내는 문자열을 시스템에 설정된 현재 지역의 형식으로 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.toString()")}}</dt>
+ <dd>
+ <code>Date</code>를 나타내는 시간 문자열을 반환합니다. {{jsxref("Object.prototype.toString()")}} 메서드를
+ 재정의합니다.
+ </dd>
+ <dt>{{jsxref("Date.prototype.toTimeString()")}}</dt>
+ <dd><code>Date</code>의 시간 부분만 나타내는, 사람이 읽을 수 있는 문자열을 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.toUTCString()")}}</dt>
+ <dd><code>Date</code>를 나타내는 문자열을 UTC 기준으로 반환합니다.</dd>
+ <dt>{{jsxref("Date.prototype.valueOf()")}}</dt>
+ <dd>
+ {{jsxref("Date")}} 객체의 원시 값을 반환합니다. {{jsxref("Object.prototype.valueOf()")}} 메서드를 재정의합니다.
+ </dd>
</dl>
-<h2 id="설명">설명</h2>
+<h2 id="examples">예제</h2>
-<h3 id="유닉스_시간과_타임스탬프">유닉스 시간과 타임스탬프</h3>
+<h3 id="several_ways_to_create_a_date_object">Date 객체를 만드는 여러가지 방법</h3>
-<p>JavaScript 날짜는 1970년 1월 1일 자정 (UTC)로부터 지난 시간을 밀리초 단위로 나타낸 것입니다. 이 날짜와 시간을 합쳐 <strong>유닉스 시간</strong>이라고 부릅니다. 유닉스 시간은 컴퓨터로 날짜와 시간을 기록할 때 널리 사용하는 기준점입니다.</p>
+<p>아래 예제는 JavaScript 날짜를 생성하는 몇 가지 방법을 보입니다.</p>
-<div class="blockIndicator note">
-<p><strong>참고</strong>: 시간과 날짜는 현시 시간으로 저장된다는 점을 기억하는게 중요합니다. 시간, 날짜, 아니면 각각의 구성 요소를 회수하는 기본 메서드도 현지 시간에서 동작합니다.</p>
+<div class="note">
+ <p>
+ <strong>참고:</strong> <code>Date</code> 생성자(및 동일한 동작의 <code>Date.parse()</code>)를 사용한 날짜 분석은
+ 동작이 일관적이지 못하고 브라우저끼리 차이가 존재하므로 사용하지 않는 것이 좋습니다.
+ </p>
</div>
-<p>하루는 86,400,000 밀리초입니다. 타임스탬프 기록에 사용하는 수의 크기를 고려했을 때, Date 객체는 유닉스 시간으로부터 약 ±100,000,000일 (1억일)을 기록할 수 있습니다. 따라서 293,742년이 오면 문제가 발생할 여지가 있습니다.</p>
+<pre class="brush: js">
+let today = new Date()
+let birthday = new Date('December 17, 1995 03:24:00')
+let birthday = new Date('1995-12-17T03:24:00')
+let birthday = new Date(1995, 11, 17) // 월은 0부터 시작
+let birthday = new Date(1995, 11, 17, 3, 24, 0)</pre
+>
-<h3 id="날짜_형식과_시간대_변환">날짜 형식과 시간대 변환</h3>
+<h3 id="two_digit_years_map_to_1900_–_1999">두 자리 연도는 1900년대로</h3>
-<p>날짜를 얻는 방법과 시간대를 바꾸는 메서드는 여럿 있습니다. 그 중 특히 유용한 함수는 날짜 및 시간을 국제 표준 시간인 협정 표준시(UTC)로 반환하는 함수입니다. UTC는 그리니치 시간대라고도 불리는데, 기준 시간대가 영국의 런던과 인근의 그리니치를 지나는 경선이기 때문입니다. 사용자의 장치는 현지 시간을 제공합니다.</p>
+<p>
+ <code>Date</code>의 연도에 <code>0</code>부터 <code>99</code>까지의 정수를 제공하면 <code>1900</code>부터
+ <code>1999</code>로 처리합니다. 다른 모든 값은 그대로 사용합니다.
+</p>
-<p>{{jsxref("Date.getDay", "getDay()")}}와 {{jsxref("Date.setHours", "setHours()")}}처럼 현지 시간을 기준으로 한 구성요소 읽기 및 쓰기 메서드처럼, {{jsxref("Date.getDayUTC", "getUTCDay()")}} 와 {{jsxref("Date.setHoursUTC", "setUTCHours()")}}처럼 UTC를 기준으로 하는 읽기 및 쓰기 메서드도 존재합니다.</p>
+<p>
+ 1900년대가 아닌, 실제 <code>0</code> ~ <code>99</code>년을 지정해야 하면 {{jsxref("Date.prototype.setFullYear()")}}와
+ {{jsxref("Date.prototype.getFullYear()")}} 메서드를 사용해야 합니다.
+</p>
-<h2 id="속성">속성</h2>
+<pre class="brush: js">
+let date = new Date(98, 1) // Sun Feb 01 1998 00:00:00 GMT+0900 (대한민국 표준시)
-<dl>
- <dt>{{jsxref("Date.prototype")}}</dt>
- <dd><code>Date</code> 객체에 추가 속성을 부여할 수 있습니다.</dd>
- <dt><code>Date.length</code></dt>
- <dd><code>Date.length</code>의 값은 7로, 생성자가 받을 수 있는 매개변수의 수입니다. 보통 유용하게 쓸 수 있는 값은 아닙니다.</dd>
-</dl>
-
-<h2 id="메서드">메서드</h2>
+// 구형 메서드: 여기서도 98을 1998로 처리
+date.setYear(98) // Sun Feb 01 1998 00:00:00 GMT+0900 (대한민국 표준시)
-<dl>
- <dt>{{jsxref("Date.now()")}}</dt>
- <dd>1970년 1월 1일 00:00:00 UTC(유닉스 시간)부터 지난 시간을 밀리초 단위의 숫자 값으로 반환합니다. 윤초는 무시합니다.</dd>
- <dt>{{jsxref("Date.parse()")}}</dt>
- <dd>Parses a string representation of a date and returns the number of milliseconds since 1 January, 1970, 00:00:00, UTC.
- <div class="note"><strong>Note:</strong> Parsing of strings with <code>Date.parse</code> is strongly discouraged due to browser differences and inconsistencies.</div>
- </dd>
- <dt>{{jsxref("Date.UTC()")}}</dt>
- <dd>Accepts the same parameters as the longest form of the constructor (i.e. 2 to 7) and returns the number of milliseconds since January 1, 1970, 00:00:00 UTC, with leap seconds ignored.</dd>
-</dl>
-
-<h2 id="Date_instances" name="Date_instances">JavaScript <code>Date</code> 인스턴스</h2>
-
-<p>All <code>Date</code> instances inherit from {{jsxref("Date.prototype")}}. The prototype object of the <code>Date</code> constructor can be modified to affect all <code>Date</code> instances.</p>
-
-<h3 id="Date.prototype_메서드"><code>Date.prototype</code> 메서드</h3>
+date.setFullYear(98) // Sat Feb 01 0098 00:00:00 GMT+0827 (대한민국 표준시)
+</pre>
-<div>{{page('/ko/docs/Web/JavaScript/Reference/Global_Objects/Date/prototype', 'Methods')}}</div>
+<h3 id="calculating_elapsed_time">경과시간 계산</h3>
-<h2 id=".EC.98.88.EC.A0.9C" name=".EC.98.88.EC.A0.9C">예제</h2>
+<p>다음은 두 개의 JavaScript 날짜의 간격을 밀리초로 나타내는 예제입니다.</p>
-<h3 id=".EC.98.88.EC.A0.9C:_.EB.82.A0.EC.A7.9C.EB.A5.BC_.EC.A7.80.EC.A0.95.ED.95.98.EB.8A.94_.EC.97.AC.EB.9F.AC.EA.B0.80.EC.A7.80_.EB.B0.A9.EB.B2.95" name=".EC.98.88.EC.A0.9C:_.EB.82.A0.EC.A7.9C.EB.A5.BC_.EC.A7.80.EC.A0.95.ED.95.98.EB.8A.94_.EC.97.AC.EB.9F.AC.EA.B0.80.EC.A7.80_.EB.B0.A9.EB.B2.95">날짜를 지정하는 여러가지 방법</h3>
+<p>
+ 연, 월, 일(서머타임)의 길이가 계속해서 달라지므로, 두 시간의 간격을 시/분/초보다 큰 단위로 나타낼 땐 여러가지 문제가
+ 생기므로 이 방법을 시도하기 전에 관련 문제를 먼저 자세히 알아보세요.
+</p>
-<p>아래 예제는 날짜를 지정하는 몇가지 방법을 보여줍니다:</p>
+<pre class="brush: js">
+// Date 객체 사용법
+let start = Date.now()
-<div class="blockIndicator note">
-<p><strong>Note:</strong> parsing of date strings with the <code>Date</code> constructor (and <code>Date.parse</code>, they are equivalent) is strongly discouraged due to browser differences and inconsistencies.</p>
-</div>
-
-<pre class="brush: js">var today = new Date();
-var birthday = new Date("December 17, 1995 03:24:00");
-var birthday = new Date(95,11,17);
-var birthday = new Date(95,11,17,3,24,0);
+// 시간이 오래 걸리는 어떤 작업
+doSomethingForALongTime()
+let end = Date.now()
+let elapsed = end - start // 밀리초로 나타낸 경과시간
</pre>
-<h3 id="두_자리_연도는_1900년대로">두 자리 연도는 1900년대로</h3>
+<pre class="brush: js">
+// 내장 메서드 사용법
+let start = new Date()
-<p>In order to create and get dates between the years 0 and 99 the {{jsxref("Date.prototype.setFullYear()")}} and {{jsxref("Date.prototype.getFullYear()")}} methods should be used.</p>
+// 시간이 오래 걸리는 어떤 작업
+doSomethingForALongTime()
+let end = new Date()
+let elapsed = end.getTime() - start.getTime() // 밀리초로 나타낸 경과시간
+</pre>
-<pre class="brush: js">var date = new Date(98, 1); // Sun Feb 01 1998 00:00:00 GMT+0000 (GMT)
+<pre class="brush: js">
+// 임의의 함수를 테스트하고, 호출에 걸린 시간을 출력하려면
+function printElapsedTime(fTest) {
+ let nStartTime = Date.now(),
+ vReturn = fTest(),
+ nEndTime = Date.now()
-// Deprecated method, 98 maps to 1998 here as well
-date.setYear(98); // Sun Feb 01 1998 00:00:00 GMT+0000 (GMT)
+ console.log(`Elapsed time: ${ String(nEndTime - nStartTime) } milliseconds`)
+ return vReturn
+}
-date.setFullYear(98); // Sat Feb 01 0098 00:00:00 GMT+0000 (BST)
+let yourFunctionReturn = printElapsedTime(yourFunction)
</pre>
-<h3 id=".EC.98.88.EC.A0.9C:_.EA.B2.BD.EA.B3.BC.EC.8B.9C.EA.B0.84_.EA.B3.84.EC.82.B0" name=".EC.98.88.EC.A0.9C:_.EA.B2.BD.EA.B3.BC.EC.8B.9C.EA.B0.84_.EA.B3.84.EC.82.B0">경과시간 계산</h3>
+<div class="note">
+ <p>
+ <strong>참고:</strong> {{domxref("Window.performance", "Web Performance API", "", 1)}}의 고해상도 시간 기능을
+ 지원하는 브라우저에서는 {{domxref("Performance.now()")}}를 사용해서 {{jsxref("Date.now()")}}보다 더 안정적이고
+ 정확한 경과 시간을 알아낼 수 있습니다.
+ </p>
+</div>
-<p>The following examples show how to determine the elapsed time between two JavaScript dates in milliseconds.</p>
+<h3 id="get_the_number_of_seconds_since_the_ecmascript_epoch">ECMAScript 시간으로부터 경과한 시간을 초 단위로 가져오기</h3>
-<p>Due to the differing lengths of days (due to daylight saving changeover), months and years, expressing elapsed time in units greater than hours, minutes and seconds requires addressing a number of issues and should be thoroughly researched before being attempted.</p>
+<pre class="brush: js">let seconds = Math.floor(Date.now() / 1000)</pre>
-<pre class="brush: js">// Date 객체 사용
-var start = Date.now();
+<p>
+ 여기서는 정수만 반환하는 것이 중요하므로, 단순히 나누기만 해서는 충분하지 않습니다. 그리고 실제로 "지나간" 초를
+ 반환해야 하므로 {{jsxref("Math.round()")}}를 사용하지 않고 {{jsxref("Math.floor()")}}를 사용합니다.
+</p>
-// 시간이 오래 걸리는 작업을 여기 배치합니다
-doSomethingForALongTime();
-var end = Date.now();
-var elapsed = end - start; // 경과 시간, 밀리초.
-</pre>
+<h2 id="specifications">명세</h2>
-<pre class="brush: js">// 내장 메서드 사용
-var start = new Date();
+{{Specifications}}
-// 시간이 오래 걸리는 작업을 여기 배치합니다.
-doSomethingForALongTime();
-var end = new Date();
-var elapsed = end.getTime() - start.getTime(); // 경과 시간, 밀리초.
-</pre>
+<h2 id="browser_compatibility">브라우저 호환성</h2>
-<pre class="brush: js"><code>// to test a function and get back its return
-function printElapsedTime(fTest) {
- var nStartTime = Date.now(),
- vReturn = fTest(),
- nEndTime = Date.now();
+<p>{{Compat}}</p>
- console.log('Elapsed time: ' + String(nEndTime - nStartTime) + ' milliseconds');
- return vReturn;
-}
+<h2 id="see_also">같이 보기</h2>
-var yourFunctionReturn = printElapsedTime(yourFunction);</code></pre>
-
-<div class="blockIndicator note"><strong>Note:</strong> In browsers that support the {{domxref("window.performance", "Web Performance API", "", 1)}}'s high-resolution time feature, {{domxref("Performance.now()")}} can provide more reliable and precise measurements of elapsed time than {{jsxref("Date.now()")}}.</div>
-
-<h3 id="Get_the_number_of_seconds_since_Unix_Epoch">Get the number of seconds since Unix Epoch</h3>
-
-<pre class="brush: js">var seconds = Math.floor(Date.now() / 1000);</pre>
-
-<p>In this case it's important to return only an integer (so a simple division won't do), and also to only return actually elapsed seconds (that's why this code uses {{jsxref("Math.floor()")}} and not {{jsxref("Math.round()")}}).</p>
-
-<h2 id="명세">명세</h2>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <th scope="col">Specification</th>
- <th scope="col">Status</th>
- <th scope="col">Comment</th>
- </tr>
- <tr>
- <td>{{SpecName('ESDraft', '#sec-date-objects', 'Date')}}</td>
- <td>{{Spec2('ESDraft')}}</td>
- <td> </td>
- </tr>
- <tr>
- <td>{{SpecName('ES6', '#sec-date-objects', 'Date')}}</td>
- <td>{{Spec2('ES6')}}</td>
- <td> </td>
- </tr>
- <tr>
- <td>{{SpecName('ES5.1', '#sec-15.9', 'Date')}}</td>
- <td>{{Spec2('ES5.1')}}</td>
- <td> </td>
- </tr>
- <tr>
- <td>{{SpecName('ES1')}}</td>
- <td>{{Spec2('ES1')}}</td>
- <td>Initial definition. Implemented in JavaScript 1.1.</td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="브라우저_호환성">브라우저 호환성</h2>
-
-
-
-<p>{{Compat("javascript.builtins.Date", 3)}}</p>
+<ul>
+ <li>{{jsxref("Date/Date", "Date()")}} 생성자</li>
+</ul>