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
|
---
title: Number
slug: Web/JavaScript/Reference/Global_Objects/Number
tags:
- JavaScript
- Number
- Reference
- Vietnamese
translation_of: Web/JavaScript/Reference/Global_Objects/Number
---
<div>{{JSRef}}</div>
<p>Đối tượng JavaScript <strong>Number </strong>là một đối tượng bao bọc cho phép bạn làm việc với các giá trị số. Một đối tượng <strong>Number</strong> có thể được tạo ra sử dụng hàm khởi tạo Number().</p>
<h2 id="Cú_pháp">Cú pháp</h2>
<pre class="syntaxbox">new Number(value);</pre>
<h3 id="Các_tham_số">Các tham số</h3>
<dl>
<dt><code>value</code></dt>
<dd>Giá trị số của đối tượng được tạo ra.</dd>
</dl>
<h2 id="Mô_tả">Mô tả</h2>
<p>Các sử dụng chính cho đối tượng Number là:</p>
<ul>
<li>Nếu đối số không thể chuyển đổi được sang một số, nó trả về {{jsxref("NaN")}}.</li>
<li>Trong một ngữ cảnh không phải constructor (vd, không dùng toán tử {{jsxref("Operators/new", "new")}}), <font face="Consolas, Liberation Mono, Courier, monospace">Number có thể được sử dụng để thực hiện chuyển đổi kiểu</font>.</li>
</ul>
<h2 id="Các_thuộc_tính">Các thuộc tính</h2>
<dl>
<dt>{{jsxref("Number.EPSILON")}}</dt>
<dd>Khoảng cách nhỏ nhất giữa hai số có thể biểu thị được.</dd>
<dt>{{jsxref("Number.MAX_SAFE_INTEGER")}}</dt>
<dd><font><font>Các số an toàn tối đa trong JavaScript (</font></font><code>2<sup>53</sup> - 1)</code></dd>
<dt>{{jsxref("Number.MAX_VALUE")}}</dt>
<dd>Đại diện cho giá trị số lớn nhất.</dd>
<dt>{{jsxref("Number.MIN_SAFE_INTEGER")}}</dt>
<dd><font><font>Các số an toàn tối thiểu trong JavaScript</font></font> (<code>-(2<sup>53</sup> - 1)</code>).</dd>
<dt>{{jsxref("Number.MIN_VALUE")}}</dt>
<dd>Đại diện cho giá trị số nhỏ nhất - nghĩa là số dương gần với không nhất (không thực sự bằng không).</dd>
<dt>{{jsxref("Number.NaN")}}</dt>
<dd>Giá trị đặc biệt "không phải là một số".</dd>
<dt>{{jsxref("Number.NEGATIVE_INFINITY")}}</dt>
<dd>Giá trị đặc biệt đại diện cho âm vô cùng; được trả về khi tràn.</dd>
<dt>{{jsxref("Number.POSITIVE_INFINITY")}}</dt>
<dd>Giá trị đặc biệt đại diện cho dương vô cùng; được trả về khi tràn.</dd>
<dt>{{jsxref("Number.prototype")}}</dt>
<dd>
<p>Cho phép thêm các thuộc tính cho đối tượng Number</p>
</dd>
</dl>
<h2 id="Các_phương_thức">Các phương thức</h2>
<dl>
<dt>{{jsxref("Number.isNaN()")}}</dt>
<dd>Xác định giá trị được truyền là NaN.</dd>
<dt>{{jsxref("Number.isFinite()")}}</dt>
<dd>Xác định giá trị được truyền là một số hữu hạn.</dd>
<dt>{{jsxref("Number.isInteger()")}}</dt>
<dd>Xác định giá trị được truyền là một số nguyên.</dd>
<dt>{{jsxref("Number.isSafeInteger()")}}</dt>
<dd>Xác định giá trị được truyền là một số an toàn (số giữa <code>-(2<sup>53</sup> - 1)</code> và <code>2<sup>53</sup> - 1</code>).</dd>
<dt><s class="obsoleteElement">{{jsxref("Number.toInteger()")}} {{obsolete_inline}}</s></dt>
<dd><s class="obsoleteElement">Được sử dụng để đánh giá giá trị được truyền và chuyển đổi nó sang một số nguyên (or {{jsxref("Global_Objects/Infinity", "Infinity")}}), nhưng đã được loại bỏ.</s></dd>
<dt>{{jsxref("Number.parseFloat()")}}</dt>
<dd>Giá trị cũng giống như {{jsxref("parseFloat", "parseFloat()")}} của đối tượng toàn cầu.</dd>
<dt>{{jsxref("Number.parseInt()")}}</dt>
<dd>Giá trị cũng giống như {{jsxref("parseInt", "parseInt()")}} của đối tượng toàn cầu.</dd>
</dl>
<h2 id="Các_thể_hiện_của_Number"><code>Các thể hiện của Number</code></h2>
<p>Tất cả các thể hiện của Number được kế thừa từ {{jsxref("Number.prototype")}}. Các đối tượng nguyên mẫu (prototype) của hàm khởi tạo Number có thể được sửa đổi để ảnh hưởng đến tất cả các thể hiện của Number.</p>
<h2 id="Các_ví_dụ">Các ví dụ</h2>
<h3 id="Sử_dụng_đối_tượng_Number_để_gán_các_giá_trị_cho_các_biến_số.">Sử dụng đối tượng Number để gán các giá trị cho các biến số.</h3>
<p>Ví dụ sau sử dụng các thuộc tính của đối tượng Number để gán các giá trị cho các biến số khác nhau:</p>
<pre class="brush: js">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>
<h3 id="Phạm_vi_số_nguyên_của_Number">Phạm vi số nguyên của Number</h3>
<p>Ví dụ sau cho thấy các giá trị số nguyên tối thiểu và tối đa có thể được biểu diễn dưới dạng đối tượng Number:</p>
<pre class="brush: js">var biggestInt = 9007199254740992;
var smallestInt = -9007199254740992;
</pre>
<p>Khi phân tích cú pháp dữ liệu đã được tuần tự hóa thành JSON, các giá trị số nguyên vượt ra khỏi phạm vi này có thể được dự kiến sẽ bị hỏng khi trình phân tích cú pháp JSON ép buộc chúng với kiểu Số. Sử dụng {{jsxref ("String")}} thay vào đó là một giải pháp khả thi.</p>
<h3 id="Sử_dụng_Number_để_chuyển_đổi_một_đối_tượng_Date">Sử dụng Number để chuyển đổi một đối tượng Date</h3>
<p>Ví dụ sau chuyển đổi một đối tượng {{jsxref("Date")}} sang một giá trị số sử dụng Number như là một hàm:</p>
<pre class="brush: js">var d = new Date('October 30, 1996 13:46:36');
console.log(Number(d));
</pre>
<p>Kết quả: 846657996000.</p>
<h3 id="Chuyển_đổi_chuỗi_dạng_số_sang_số">Chuyển đổi chuỗi dạng số sang số</h3>
<pre class="brush: js">Number("123") // 123
Number("") // 0
Number(" ") // 0
Number("0x11") // 17
Number("0b11") // 3
Number("0o11") // 9
Number("foo") // NaN
Number("100a") // NaN
</pre>
<h2 id="Thông_số_kỹ_thuật">Thông số kỹ thuật</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="col">Đặc điểm kỹ thuật</th>
<th scope="col">Trạng thái</th>
<th scope="col">Chú thích</th>
</tr>
<tr>
<td>{{SpecName('ES1')}}</td>
<td>{{Spec2('ES1')}}</td>
<td>Định nghĩa ban đầu. Được thực hiện trong JavaScript 1.1.</td>
</tr>
<tr>
<td>{{SpecName('ES5.1', '#sec-15.7', 'Number')}}</td>
<td>{{Spec2('ES5.1')}}</td>
<td> </td>
</tr>
<tr>
<td>{{SpecName('ES6', '#sec-number-objects', 'Number')}}</td>
<td>{{Spec2('ES6')}}</td>
<td>Đã thêm các phương pháp và thuộc tính mới: {{jsxref("Number.EPSILON", "EPSILON")}}, {{jsxref("Number.isFinite", "isFinite")}}, {{jsxref("Number.isInteger", "isInteger")}}, {{jsxref("Number.isNaN", "isNaN")}}, {{jsxref("Number.parseFloat", "parseFloat")}}, {{jsxref("Number.parseInt", "parseInt")}}</td>
</tr>
<tr>
<td>{{SpecName('ESDraft', '#sec-number-objects', 'Number')}}</td>
<td>{{Spec2('ESDraft')}}</td>
<td> </td>
</tr>
</tbody>
</table>
<h2 id="Khả_năng_tương_thích_trình_duyệt">Khả năng tương thích trình duyệt</h2>
<div>{{CompatibilityTable}}</div>
<div id="compat-desktop">
<table class="compat-table">
<tbody>
<tr>
<th>Đặc tính</th>
<th>Chrome</th>
<th>Firefox (Gecko)</th>
<th>Internet Explorer</th>
<th>Opera</th>
<th>Safari</th>
</tr>
<tr>
<td>Basic support</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
</tr>
</tbody>
</table>
</div>
<div id="compat-mobile">
<table class="compat-table">
<tbody>
<tr>
<th>Đặc tính</th>
<th>Android</th>
<th>Chrome for Android</th>
<th>Firefox Mobile (Gecko)</th>
<th>IE Mobile</th>
<th>Opera Mobile</th>
<th>Safari Mobile</th>
</tr>
<tr>
<td>Basic support</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
<td>{{CompatVersionUnknown}}</td>
</tr>
</tbody>
</table>
</div>
<h2 id="Xem_thêm">Xem thêm</h2>
<ul>
<li>{{jsxref("NaN")}}</li>
<li>The {{jsxref("Math")}} đối tượng toàn cầu</li>
</ul>
|