Categories JavaScript

Các phương thức liên quan đến xử lý số trong JavaScript

Các phương thức liên quan đến số giúp bạn dễ dàng xử lý các con số hơn.

Các thuộc tính và phương thức liên quan đến số

Các giá trị nguyên thuỷ (như 3,14159 hoặc 2016) không có thuộc tính và phương thức bởi vì nó không phải là đối tượng.

Nhưng với JavaScript, các phương thức và thuộc tính được cung cấp cho các giá trị nguyên thuỷ, bởi vì JavaScript xử lý các giá trị nguyên thuỷ như đối tượng khi thực thi phương thức và đối tượng.


Phương thức toString()

toString() trả về một số như là một chuỗi.

Tất cả phương thức liên quan đến số có thể sử dụng cho bất cứ kiểu số nào (số thuần tuý, các biến hoặc các biểu thức):

Ví dụ

var x = 123;
x.toString();            // trả về kết quả 123 từ biến x
(123).toString();        // trả về kết quả 123 từ số thuần tuý 123
(100 + 23).toString();   // trả về kết quả 123 từ biểu thức 100 + 23

Phương thức toExponential()

toExponential() trả về kết quả là một chuỗi, với một số được làm tròn và được viết dưới dạng sử dụng số mũ.

Một đối số định nghĩa số ký tự đằng sau dấu chấm thập phân:

Định nghĩa

var x = 9.656;
x.toExponential(2);     // trả về 9.66e+0
x.toExponential(4);     // trả về 9.6560e+0
x.toExponential(6);     // trả về 9.656000e+0

Đối số là tuỳ chọn. Nếu bạn không chỉ định nó, JavaScript sẽ không làm tròn số.


Phương thức toFixed()

toFixed() trả về kết quả là một chuỗi, nó rất giống với phép làm tròn, chỉ định một số cụ thể sau dấu chấm thập phân:

Ví dụ

var x = 9.656;
x.toFixed(0);           // trả về kết quả 10
x.toFixed(2);           // trả về kết quả 9.66
x.toFixed(4);           // trả về kết quả 9.6560
x.toFixed(6);           // trả về kết quả 9.656000

toFixed(2) rất hoàn hảo để làm việc với tiền tệ.


Phương thức toPrecision()

toPrecision() trả về một chuỗi, cũng khá giống với phép làm tròn nhưng lần này là chỉ định độ dài của chuỗi:

Ví dụ

var x = 9.656;
x.toPrecision();        // trả về kết quả 9.656
x.toPrecision(2);       // trả về 9.7
x.toPrecision(4);       // trả về 9.656
x.toPrecision(6);       // trả về 9.65600

Phương thức valueOf()

valueOf() trả về một số như là một số (nghe lộn ruột nhỉ, nhưng các bạn sẽ hiểu ngay thôi).

Ví dụ

var x = 123;
x.valueOf();            // trả về kết quả 123 từ biến x
(123).valueOf();        // trả về kết quả 123 từ số thuần tuý 123
(100 + 23).valueOf();   // trả về kết quả 123 từ biểu thức 100 + 23

Trong JavaScript, một số có thể là giá trị nguyên thuỷ (typeof = number) hoặc một đối tượng (typeof = object).

Phương thức valueOf() được sử dụng nội bộ trong JavaScript để chuyển đối tượng số thành giá trị nguyên thuỷ.

Không có lý do để sử dụng nó trong mã của bạn.

Định dạng dữ liệu trong JavaScript có hai phương thức là valueOf() và toString().


Chuyển biến thành dạng số

Có 3 phương thức của JavaScript có thể sử dụng để chuyển đổi biến thành một số:

  • Phương thức Number()
  • Phương thức parseInt()
  • Phương thức parseFloat()

Các phương thức này không phải là phương thức của số, nhưng nó là các phương thức toàn cục.


Các phương thức toàn cục

Các phương thức toàn cục trong JavaScript có thể sử dụng trên tất cả các dạng dữ liệu của JavaScript.

Dưới đây là các phương thức liên quan nhất khi làm việc với các con số:

Phương thức Mô tả
Number() Trả về một số, chuyển đổi từ đối số của nó.
parseFloat() Phân tích đối số và trả về một số thực
parseInt() Phân tích đối số và trả về một số nguyên

Phương thức Number()

Number() có thể được sử dụng để chuyển đổi biến trong JavaScript thành các con số:

Ví dụ

x = true;
Number(x);        // trả về kết quả 1
x = false;
Number(x);        // trả về kết quả 0
x = new Date();
Number(x);        // trả về kết quả 1404568027739
x = "10"
Number(x);        // trả về kết quả 10
x = "10 20"
Number(x);        // trả về kết quả NaN

Khi sử dụng Date(), phương thức Number() trả về con số tính theo mili giây kể từ ngày 1.1.1970


Phương thức parseInt()

parseInt() phân tích một chuỗi và trả về một số nguyên. Khoảng trống được phép. Chỉ số đầu tiên được trả về:

Ví dụ

parseInt("10");         // trả về 10
parseInt("10.33");      // trả về 10
parseInt("10 20 30");   // trả về 10
parseInt("10 years");   // trả về 10
parseInt("cuối năm lớp 10");   // trả về NaN

Nếu một số không thể chuyển đổi, NaN (Không phải là số  – Not a Number) sẽ được trả về.


Phương thức parseFloat()

parseFloat() phân tích một chuỗi và trả về một số. Khoảng trống là cho phép. Chỉ số đầu tiên được trả về.

Vsi dụ

parseFloat("10");        // trả về 10
parseFloat("10.33");     // trả về 10.33
parseFloat("10 20 30");  // trả về 10
parseFloat("10 years");  // trả về 10
parseFloat("cuối năm lớp 10");  // trả về NaN

Nếu số không thể chuyển đổi, NaN sẽ được trả về.

Các thuộc tính liên quan đến số

Thuộc tính Mô tả
MAX_VALUE Trả về số lớn nhất có thể trong JavaScript
MIN_VALUE Trả về số nhỏ nhất có thể trong JavaScript
NEGATIVE_INFINITY Đại diện cho âm vô cực
NaN Đại diện cho giá trị “Không-phải-là-số”
POSITIVE_INFINITY Đại diện cho dương vô cực

Ví dụ

var x = Number.MAX_VALUE;

Các thuộc tính số thuộc về đối tượng số của JavaScript gọi là Số.

Các thuộc tính này có thể được truy cập như Number.MAX_VALUE.

Sử dụng myNumber.MAX_VALUE, mà myNumber là một biến, biểu thức hoặc giá trị, sẽ trả về kết quả không được định nghĩa:

Ví dụ

var x = 6;
var y = x.MAX_VALUE; // y trở thành undefined (không định nghĩa)
Back to Top