1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
|
---
title: 숫자와 날짜
slug: Web/JavaScript/Guide/Numbers_and_dates
tags:
- JavaScript
translation_of: Web/JavaScript/Guide/Numbers_and_dates
---
<div>{{jsSidebar("JavaScript Guide")}} {{PreviousNext("Web/JavaScript/Guide/Expressions_and_Operators", "Web/JavaScript/Guide/Text_formatting")}}</div>
<p><span class="seoSummary">이 장에서는 JavaScript에서 숫자와 날짜를 사용하기 위한 개념과 객체, 함수에 대해 소개합니다.</span> 그리고 숫자를 10진법, 2진법, 16진법 등의 다양한 형태로 표현하는 방법과 더불어 {{jsxref("Math")}} 객체를 사용해 다양한 수학 연산을 수행하는 방법을 알 수 있습니다.</p>
<h2 id="숫자">숫자</h2>
<p>JavaScript에서 모든 숫자는 <a class="external external-icon" href="https://en.wikipedia.org/wiki/Double-precision_floating-point_format">double-precision 64-bit binary format IEEE 754</a> (즉, ±2<sup>−1022</sup> 과 ±2<sup>+1023</sup> 또는 대략 ±10<sup>−308</sup> to ±10<sup>+308</sup> 사이의 숫자이며 53bits의 수치정밀도 )로 구현되어 있습니다. ± 2<sup>53</sup> - 1까지의 정수 값을 정확하게 나타낼 수 있습니다.</p>
<p>여기 부동 소수점 숫자를 나타낼 수 있으며, 숫자 형식은 세 개의 상징적인 값: <code>+</code>{{jsxref("Infinity")}}, <code>-</code>{{jsxref("Infinity")}}, and {{jsxref("NaN")}} (숫자가 아닌 값)을 갖습니다.</p>
<p>JavaScript에 최근 추가 된 것은 {{jsxref ( "BigInt")}}로, 매우 큰 정수를 나타낼 수 있습니다. <code>BigInt</code>를사용할땐 다음을 주의해야 합니다. 예를 들면, <code>BigInt</code>와 {{jsxref ( "Number")}} 값을 같은 연산으로 혼합하고 일치시킬 수는 없으며 {{jsxref ( "Math")}} 객체를 <code>BigInt</code>값과 함께 사용할 수 없습니다.</p>
<p>JavaScript에서 다른 기본형과 문맥에 대한 내용은 <a href="/en-US/docs/Web/JavaScript/Data_structures">JavaScript data types and structures</a>를 참조하세요.</p>
<p>여러분은 숫자 리터럴의 네 가지 유형을 사용할 수 있습니다: 10진수, 2진수, 8진수, 16진수</p>
<h3 id="10진수">10진수</h3>
<pre class="brush: js notranslate">1234567890
42
// 앞에 0이 붙은 숫자를 조심하세요:
0888 // 10진수 888로 해석됩니다.
0777 // non-strict mode에서 10진수 511로 해석됩니다.
</pre>
<p>10진수 리터럴도 영(<code>0</code>)으로 시작될 수 있다는 점에 유의하세요. 그러나 만약 영<code>0</code> 다음 숫자가 8보다 작으면, 그 숫자는 8진법으로 해석됩니다.</p>
<h3 id="2진수">2진수</h3>
<p>2진수 구문은 앞에 오는 0과 소문자 또는 대문자 라틴 문자 "B"(0B 또는 0b)를 사용합니다. 0b 다음의 숫자가 0 또는 1이 아니면 다음의 <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SyntaxError">SyntaxError</a>가 발생합니다. "0b 이후에 누락 된 2 진수"("Missing binary digits after 0b")입니다.</p>
<pre class="brush: js notranslate">var FLT_SIGNBIT = 0b10000000000000000000000000000000; // 2147483648
var FLT_EXPONENT = 0b01111111100000000000000000000000; // 2139095040
var FLT_MANTISSA = 0B00000000011111111111111111111111; // 8388607</pre>
<h3 id="8진수">8진수</h3>
<p>8 진수 구문은 앞에 0을 사용합니다. <code>0</code> 이후의 숫자가 0에서 7까지 범위 밖에 있는 경우, 숫자는 10진수로 해석됩니다.</p>
<pre class="brush: js notranslate">var n = 0755; // 493
var m = 0644; // 420
</pre>
<p>ECMAScript 5의 Strict 모드는 8 진수 구문을 금지합니다. 8 진수 구문은 ECMAScript 5의 일부가 아니지만, <code>0644 === 420</code> 및 <code>"\ 045"=== "%"</code>의 8 진수에 접두사를 붙이면 모든 브라우저에서 지원됩니다. ECMAScript 2015에서는 접두어가 <code>0o</code>인 경우 8 진수가 지원됩니다 (예 :</p>
<pre class="notranslate"><code>var a = 0o10; // ES2015: 8</code></pre>
<h3 id="16진수">16진수</h3>
<p>16진수 구문은 앞에 0 다음에 소문자나 대문자 라틴어 문자 "X"(<code>0x</code> 또는 <code>0X</code>)를 사용합니다. 0X 이후 숫자가 범위(0123456789ABCDEF) 밖에 있는 경우, 다음 <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SyntaxError">SyntaxError</a>가 발생합니다: "식별자는 숫자 리터럴 후 즉시 시작됩니다".</p>
<pre class="brush: js notranslate">0xFFFFFFFFFFFFFFFFF // 295147905179352830000
0x123456789ABCDEF // 81985529216486900
0XA // 10
</pre>
<h3 id="지수_계산">지수 계산</h3>
<pre class="notranslate"><code>1E3 // 1000
2e6 // 2000000
0.1e2 // 10</code>
</pre>
<h2 id="Number_객체"><code>Number</code> 객체</h2>
<p>{{jsxref("Number")}} 내장객체는 최대값, not-a-number, 무한대와 같은 숫자 상수를 위한 속성들이 있습니다. 여러분은 이러한 속성의 값을 변경 할 수 없고 다음과 같이 사용합니다:</p>
<pre class="brush: js notranslate">var biggestNum = Number.MAX_VALUE;
var smallestNum = Number.MIN_VALUE;
var infiniteNum = Number.POSITIVE_INFINITY;
var negInfiniteNum = Number.NEGATIVE_INFINITY;
var notANum = Number.NaN;
</pre>
<p>여러분은 직접 생성한 <code>Number</code> 객체의 속성이 아닌, 위와같이 항상 미리 정의된 <code>Number</code> 객체의 속성을 참조해야합니다.</p>
<p>다음 표에서는 <code>Number</code> 객체의 속성이 요약되어 있습니다.</p>
<table class="standard-table">
<caption><code>Number</code> 속성들</caption>
<thead>
<tr>
<th scope="col">특성</th>
<th scope="col">묘사</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{jsxref("Number.MAX_VALUE")}}</td>
<td>표현가능한 가장 큰 수 (<code>±1.7976931348623157e+308</code>)</td>
</tr>
<tr>
<td>{{jsxref("Number.MIN_VALUE")}}</td>
<td>표현가능한 가장 작은 수(<code>±5e-324</code>)</td>
</tr>
<tr>
<td>{{jsxref("Number.NaN")}}</td>
<td>"숫자가 아닌" 특수값</td>
</tr>
<tr>
<td>{{jsxref("Number.NEGATIVE_INFINITY")}}</td>
<td>음의 무한대값; 오버 플로로 반환됨.</td>
</tr>
<tr>
<td>{{jsxref("Number.POSITIVE_INFINITY")}}</td>
<td>양의 무한대 값; 오버 플로로 반환됨.</td>
</tr>
<tr>
<td>{{jsxref("Number.EPSILON")}}</td>
<td>표현가능한 매우 작은 값{{jsxref("Number")}}.(<code>2.220446049250313e-16</code>)</td>
</tr>
<tr>
<td>{{jsxref("Number.MIN_SAFE_INTEGER")}}</td>
<td>자바스크립트에서 안전한 최소의 정수.(−2<sup>53</sup> + 1, or <code>−9007199254740991</code>)</td>
</tr>
<tr>
<td>{{jsxref("Number.MAX_SAFE_INTEGER")}}</td>
<td>자바스크립트에서 안전한 최대의 정수.(+2<sup>53</sup> − 1, or <code>+9007199254740991</code>)</td>
</tr>
</tbody>
</table>
<table class="standard-table">
<caption><code>Number</code> 메소드들</caption>
<thead>
<tr>
<th>방법</th>
<th>묘사</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{jsxref("Number.parseFloat()")}}</td>
<td>
<p>문자열 인수를 파싱하고 부동 소수점 숫자를 반환합니다. 전역 {{jsxref("parseFloat", "parseFloat()")}} 함수와 동일합니다.</p>
</td>
</tr>
<tr>
<td>{{jsxref("Number.parseInt()")}}</td>
<td>문자열 라인 인수를 파싱해, 지정된 기수 또는 밑줄의 정수를 돌려줍니다. 전역 {{jsxref("parseInt", "parseInt()")}}함수와 동일합니다.</td>
</tr>
<tr>
<td>{{jsxref("Number.isFinite()")}}</td>
<td>전달된 값이 유한한 수인지 판정합니다.</td>
</tr>
<tr>
<td>{{jsxref("Number.isInteger()")}}</td>
<td>전달된 값이 정수인지 판정합니다.</td>
</tr>
<tr>
<td>{{jsxref("Number.isNaN()")}}</td>
<td>이 전달된 값 {{jsxref("Global_Objects/NaN", "Not-a-Number")}}여부를 확인합니다. 원본 글로벌 {{jsxref("Global_Objects/isNaN", "(isNaN)")}}의 더욱 강력한 버전입니다.</td>
</tr>
<tr>
<td>{{jsxref("Number.isSafeInteger()")}}</td>
<td>제공된 값이 안전한 정수인지 여부를 확인합니다.</td>
</tr>
</tbody>
</table>
<p><code>Number</code> 프로토 타입은 다양한 형식의 <code>Number</code> 객체에서 정보를 검색하는 메소드를 제공합니다. 다음 표는 <code>Number.prototype</code>의 메소드를 요약 한 것입니다.</p>
<table class="standard-table">
<caption><code>Number.prototype</code>의 방법</caption>
<thead>
<tr>
<th scope="col">방법</th>
<th scope="col">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{jsxref("Number.toExponential", "toExponential()")}}</td>
<td>지수표기법 안에서 번호를 나타내는 문자열을 반환합니다.</td>
</tr>
<tr>
<td>{{jsxref("Number.toFixed", "toFixed()")}}</td>
<td>문자열 고정 소수 점 표기법의 수를 나타내는 문자열을 반환합니다.</td>
</tr>
<tr>
<td>{{jsxref("Number.toPrecision", "toPrecision()")}}</td>
<td>지정된 정밀에 고정 소수 점 표기법의 수를 나타내는 문자열을 반환합니다.</td>
</tr>
</tbody>
</table>
<h2 id="Math_객체"><code>Math</code> 객체</h2>
<p>내장 {{jsxref ( "Math")}} 객체는 수학 상수 및 함수에 대한 속성 및 메서드를 포함합니다. 예를 들어, <code>Math</code> 객체의 <code>PI</code> 속성에는 pi (3.141 ...) 값이 있습니다.이 값은 응용 프로그램에서 다음과 같이 사용합니다.</p>
<pre class="brush: js notranslate">Math.PI
</pre>
<p>마찬가지로 표준 수학 함수도 <code>Math</code>의 함수입니다. 여기에는 삼각 함수, 로그 함수, 지수 함수 및 기타 함수가 포함됩니다. 예를 들어 삼각 함수 sine을 사용하려면 다음과 같이 작성합니다.</p>
<pre class="brush: js notranslate">Math.sin(1.56)
</pre>
<p><code>Math</code>의 모든 삼각 함수에는 라디안으로 매게변수를 입력해야 합니다.</p>
<p>다음 표에서는 <code>Math</code> 개체의 방법을 요약하였습니다.</p>
<table class="standard-table">
<caption><code>Math</code>의 메소드들</caption>
<thead>
<tr>
<th scope="col">방법</th>
<th scope="col">묘사</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{jsxref("Math.abs", "abs()")}}</td>
<td>절대 값</td>
</tr>
<tr>
<td>{{jsxref("Math.sin", "sin()")}}, {{jsxref("Math.cos", "cos()")}}, {{jsxref("Math.tan", "tan()")}}</td>
<td>표준 삼각 함수; 라디안에서의 인수</td>
</tr>
<tr>
<td>{{jsxref("Math.asin", "asin()")}}, {{jsxref("Math.acos", "acos()")}}, {{jsxref("Math.atan", "atan()")}}, {{jsxref("Math.atan2", "atan2()")}}</td>
<td>역삼각 함수; 라디안에 반환 값</td>
</tr>
<tr>
<td>{{jsxref("Math.sinh", "sinh()")}}, {{jsxref("Math.cosh", "cosh()")}}, {{jsxref("Math.tanh", "tanh()")}}</td>
<td>쌍곡삼각함수; 라디안에 반환 값.</td>
</tr>
<tr>
<td>{{jsxref("Math.asinh", "asinh()")}}, {{jsxref("Math.acosh", "acosh()")}}, {{jsxref("Math.atanh", "atanh()")}}</td>
<td>역쌍곡삼각함수; 라디안에 반환 값.</td>
</tr>
<tr>
<td>
<p>{{jsxref("Math.pow", "pow()")}}, {{jsxref("Math.exp", "exp()")}}, {{jsxref("Math.expm1", "expm1()")}}, {{jsxref("Math.log10", "log10()")}}, {{jsxref("Math.log1p", "log1p()")}}, {{jsxref("Math.log2", "log2()")}}</p>
</td>
<td>지수와 로그 기능.</td>
</tr>
<tr>
<td>{{jsxref("Math.floor", "floor()")}}, {{jsxref("Math.ceil", "ceil()")}}</td>
<td> 가장큰/가장작은 정수 보다 적은/많은 또는 그와 동등한 원칙으로 반환해라.</td>
</tr>
<tr>
<td>{{jsxref("Math.min", "min()")}}, {{jsxref("Math.max", "max()")}}</td>
<td>더적거나 더많은 쉼표의 (각각) 숫자 인수의 나뉜목록으로 반환해라.</td>
</tr>
<tr>
<td>{{jsxref("Math.random", "random()")}}</td>
<td>0과 1사이의 난수를 반환해라.</td>
</tr>
<tr>
<td>{{jsxref("Math.round", "round()")}}, {{jsxref("Math.fround", "fround()")}}, {{jsxref("Math.trunc", "trunc()")}},</td>
<td>반올림과 절단 기능들.</td>
</tr>
<tr>
<td>{{jsxref("Math.sqrt", "sqrt()")}}, {{jsxref("Math.cbrt", "cbrt()")}}, {{jsxref("Math.hypot", "hypot()")}}</td>
<td>제곱 근, 세 제곱 근, 평방 인수의 합의 제곱 근.</td>
</tr>
<tr>
<td>{{jsxref("Math.sign", "sign()")}}</td>
<td>그 수가 양수인지 음수인지 0인지를 가르키는 숫자의 표시.</td>
</tr>
<tr>
<td>{{jsxref("Math.clz32", "clz32()")}},<br>
{{jsxref("Math.imul", "imul()")}}</td>
<td>32비트 이진 표시의 주요 제로 비트 수.<br>
그 두 인수의 C-like 32비트 곱셈의 결과.</td>
</tr>
</tbody>
</table>
<p>다른 많은 객체와 달리 자신의 <code>Math</code> 개체를 만들필요가 없습니다. 언제든 내장 된 <code>Math</code> 객체 바로 사용할 수 있습니다.</p>
<h2 id="Date_객체"><code><font face="Consolas, Monaco, Andale Mono, monospace">Date</font></code><font face="Consolas, Monaco, Andale Mono, monospace"> 객체</font></h2>
<p>자바스크립트에는 날짜 데이터 타입이 없습니다. 그러나, {{jsxref ( "Date")}} 객체와 그 메소드를 사용하여 응용 프로그램에서 날짜와 시간을 처리 할 수 있습니다. <code>Date</code> 객체에는 날짜 설정, 가져 오기 및 조작을위한 많은 메소드가 있습니다. 속성(properties)이 없습니다.</p>
<p>자바스크립트는 자바와 비슷하게 날짜를 처리합니다. 두 언어에는 동일한 날짜 메소드가 많으며 두 언어 모두 1970 년 1 월 1 일 00:00:00 이후의 밀리 초 수로 날짜를 저장합니다. 유닉스 타임 스탬프는 1970 년 1 월 1 일 00:00:00 이후의 초 수입니다.</p>
<p>Date 개체 범위는 UTC 1970 년 1 월 1 일을 기준으로 -100,000,000 일에서 100,000,000 일입니다.</p>
<p>Date 객체를 만들려면 :</p>
<pre class="brush: js notranslate">var dateObjectName = new Date([parameters]);
</pre>
<p>여기서 <code>dateObjectName</code>은 만들려는 <code>Date</code> 객체의 이름입니다. 새로운 객체 또는 기존 객체의 속성 일 수 있습니다.</p>
<p><code>new</code> 키워드없이 <code>Date</code>를 호출하면 현재 날짜와 시간을 나타내는 문자열이 반환됩니다.</p>
<p>앞 구문에서 <code>parameters</code>는 아래 규칙을 따릅니다.</p>
<ul>
<li>아무것도없을때: 오늘의 날짜와 시간을 만듭니다. 예를 들어, <code>today = new Date();</code>.</li>
<li>날짜를 나타내는 문자열의 형식: "Month day, year hours:minutes:seconds."예를 들어, <code>var Xmas95 = new Date("December 25, 1995 13:30:00")</code>.만약 당신이 시간, 분, 또는 초를 빠뜨린다면, 값은 0이 됩니다.</li>
<li>정수 값의 연도, 월, 날의 집합입니다. 예를 들어, <code>var Xmas95 = new Date(1995, 11, 25)</code>.</li>
<li>연도, 월, 일, 시, 분,초 동안 정수 값의 집합입니다.. 예를 들어, <code>var Xmas95 = new Date(1995, 11, 25, 9, 30, 0);</code>.</li>
</ul>
<h3 id="Data_개체의_표현_방법"><code>Data</code> 개체의 표현 방법</h3>
<p>날짜와 시간을 조절하는 <code>Date</code>객체표현 방법은 아래 종류로 나뉩니다:</p>
<ul>
<li>"set" 함수, 날짜 개체 안에서의 날짜 및 시간 값을 설정합니다.</li>
<li>"get" 함수, 날짜 개체 안에서의 날짜 및 시간 값을 얻습니다.</li>
<li>"to" 함수, 날짜 개체로부터 문자열 값을 반환합니다.</li>
<li><code>Date</code> 문자열을 분석하기위해 parse와 UTC함수를 사용합니다.</li>
</ul>
<p>"get"및 "set"메소드를 사용하여 초, 분,시, 일, 요일, 월 및 연도를 별도로 가져 와서 설정할 수 있습니다. 요일이 자동적으로 설정되기 (위해) 때문에, 요일을 돌려주는 getDay 메소드가 있습니다만, 대응하는 setDay 메소드는 없습니다. 이러한 메서드는 정수를 사용하여 다음과 같이 값을 나타냅니다.</p>
<ul>
<li>초와 분: 0 to 59</li>
<li>시간: 0 to 23</li>
<li>요일: 0 (Sunday) to 6 (Saturday)</li>
<li>날짜: 1 to 31 (day of the month)</li>
<li>월: 0 (January) to 11 (December)</li>
<li>연도: years since 1900</li>
</ul>
<p>예를 들어, 아래와 같이 값들을 정의해봅시다 :</p>
<pre class="brush: js notranslate">var Xmas95 = new Date("December 25, 1995");
</pre>
<p>그러면 <code>Xmas95.getMonth()</code>는 11을 반환합니다, 그리고 <code>Xmas95.getFullYear()</code>는 1995를 반환합니다.</p>
<p><code>getTime</code>과 <code>setTime</code>방법들은 날짜를 나눌때 유용합니다. <code>getTime</code>함수는 <code>Date</code>객체에 대해 1970년 1월 1일 00:00시부터 밀리초단위로 리턴합니다.</p>
<p>예를 들어, 다음 코드는 현재 년도에 남아 수를 표시합니다:</p>
<pre class="brush: js notranslate">var today = new Date();
var endYear = new Date(1995, 11, 31, 23, 59, 59, 999); // Set day and month
endYear.setFullYear(today.getFullYear()); // Set year to this year
var msPerDay = 24 * 60 * 60 * 1000; // Number of milliseconds per day
var daysLeft = (endYear.getTime() - today.getTime()) / msPerDay;
var daysLeft = Math.round(daysLeft); //returns days left in the year
</pre>
<p>이 예제에는 오늘 날짜가 포함된 <code>today</code>라는 명칭을 가진 <code>Date</code>객체를 만듭니다. 그리고 나서 <code>endYear</code>라는 <code>Date</code>객체를 만들고 현재연도를 설정합니다. 그런 다음 하루에 밀리 초 수를 사용하여 <code>getTime</code>을 사용하고 전체 일 수를 반올림하여 <code>today</code>와 <code>endYear</code> 사이의 일 수를 계산합니다.</p>
<p><code>Parse</code> 함수는 날짜문자열부터 기존의 <code>Date</code>객체까지의 값을 할당하기에 유용합니다. 예를 들어, 다음 코드는 그 <code>IPOdate</code> 객체에 날짜값을 할당하기위해 <code>parse</code>와 <code>setTime</code>을 사용합니다;</p>
<pre class="brush: js notranslate">var IPOdate = new Date();
IPOdate.setTime(Date.parse("Aug 9, 1995"));
</pre>
<h3 id="예제">예제</h3>
<p>다음 예제 에서 <code>JSClock()</code>는 digital 시계형식의 시간을 반환합니다.</p>
<pre class="brush: js notranslate">function JSClock() {
var time = new Date();
var hour = time.getHours();
var minute = time.getMinutes();
var second = time.getSeconds();
var temp = "" + ((hour > 12) ? hour - 12 : hour);
if (hour == 0)
temp = "12";
temp += ((minute < 10) ? ":0" : ":") + minute;
temp += ((second < 10) ? ":0" : ":") + second;
temp += (hour >= 12) ? " P.M." : " A.M.";
return temp;
}
</pre>
<p><code>JSClock</code> 함수는 먼저 time이라는 새 <code>Date</code> 객체를 만듭니다. 인수가 없으므로 현재 날짜와 시간으로 시간이 생성됩니다. 그런 다음 <code>getHours</code>, <code>getMinutes</code> 및 <code>getSeconds</code> 메소드를 호출하면 현재 시간, 분 및 초 값이<code>hour</code>, <code>minute</code>, <code>second</code>로 할당됩니다.</p>
<p>다음 네 문장은 시간을 기준으로 문자열 값을 만듭니다. 첫 번째 명령문은 변수 temp를 작성하고 조건식을 사용하여 값을 할당합니다. hour가 12보다 큰 경우 (hour - 12), 그렇지 않은 경우 시간이 0이 아닌 경우 시간이 12 일 경우 시간이 12가됩니다.</p>
<p>다음 명령문은 <code>temp</code> 값에 <code>minute</code> 값을 추가합니다. 분(<code>minute</code>)의 값이 10보다 작 으면 조건식은 앞에 0이 있는 문자열을 추가합니다. 그렇지 않으면 콜론을 구분하는 문자열을 추가합니다. 그런 다음 같은 방법으로 temp에 초 값을 추가합니다.</p>
<p>마지막으로 조건부 표현식에 "P.M."이 추가됩니다. 시간(<code>hour</code>)이 12 시간 이상이면 임시(<code>temp</code>)로; 그렇지 않으면 "A.M."을 <code>temp</code>에 추가합니다.</p>
<p>{{PreviousNext("Web/JavaScript/Guide/Expressions_and_Operators", "Web/JavaScript/Guide/Text_formatting")}}</p>
|