TopDev

Đối tượng Number trong JavaScript

minhu 📖 4 phút đọc

Trong JavaScript, đối tượng Number là một hàm tạo được sử dụng để tạo ra các đối tượng đại diện cho giá trị số. Mặc dù các giá trị số thường được sử dụng dưới dạng nguyên thủy (primitive), nhưng JavaScript cung cấp đối tượng Number để làm việc với các giá trị số và cung cấp nhiều phương thức hữu ích để xử lý chúng.

Tạo đối tượng Number#

Bạn có thể tạo một đối tượng Number bằng cách sử dụng từ khóa new: let numObject = new Number(123); Tuy nhiên, bạn thường không cần sử dụng đối tượng Number một cách rõ ràng vì các giá trị số nguyên thủy có thể tự động chuyển đổi thành đối tượng Number khi cần.

Các thuộc tính của đối tượng Number#

Thuộc tính tĩnh (static properties)

  • Number.MAX_VALUE: Giá trị số lớn nhất có thể biểu diễn (khoảng 1.7976931348623157e+308). console.log(Number.MAX_VALUE); // 1.7976931348623157e+308

  • Number.MIN_VALUE: Giá trị số nhỏ nhất có thể biểu diễn (lớn hơn 0 nhưng nhỏ hơn bất kỳ số dương nào khác, khoảng 5e-324). console.log(Number.MIN_VALUE); // 5e-324

  • Number.POSITIVE_INFINITY: Đại diện cho giá trị vô cùng dương. console.log(Number.POSITIVE_INFINITY); // Infinity

  • Number.NEGATIVE_INFINITY: Đại diện cho giá trị vô cùng âm. console.log(Number.NEGATIVE_INFINITY); // -Infinity

  • Number.NaN: Đại diện cho giá trị không phải số (Not-a-Number). console.log(Number.NaN); // NaN

  • Number.EPSILON: Sự khác biệt nhỏ nhất giữa hai số đại diện được (khoảng 2.220446049250313e-16). console.log(Number.EPSILON); // 2.220446049250313e-16

  • Number.MAX_SAFE_INTEGER: Giá trị số nguyên lớn nhất an toàn (253 - 1). console.log(Number.MAX_SAFE_INTEGER); // 9007199254740991

  • Number.MIN_SAFE_INTEGER: Giá trị số nguyên nhỏ nhất an toàn (-(253 - 1)). console.log(Number.MIN_SAFE_INTEGER); // -9007199254740991

Các phương thức của đối tượng Number#

Phương thức tĩnh (static methods)

  • Number.isNaN(value): Kiểm tra xem giá trị có phải là NaN không. console.log(Number.isNaN(NaN)); // true console.log(Number.isNaN(123)); // false

  • Number.isFinite(value): Kiểm tra xem giá trị có phải là số hữu hạn không. console.log(Number.isFinite(123)); // true console.log(Number.isFinite(Infinity)); // false

  • Number.isInteger(value): Kiểm tra xem giá trị có phải là số nguyên không. console.log(Number.isInteger(123)); // true console.log(Number.isInteger(123.45)); // false

  • Number.isSafeInteger(value): Kiểm tra xem giá trị có phải là số nguyên an toàn không (nằm trong khoảng từ Number.MIN_SAFE_INTEGER đến Number.MAX_SAFE_INTEGER). console.log(Number.isSafeInteger(9007199254740991)); // true console.log(Number.isSafeInteger(9007199254740992)); // false

  • Number.parseFloat(string): Chuyển đổi chuỗi thành số thực. console.log(Number.parseFloat("3.14")); // 3.14

  • Number.parseInt(string, radix): Chuyển đổi chuỗi thành số nguyên với cơ số radix. console.log(Number.parseInt("1010", 2)); // 10

Phương thức của đối tượng Number instance methods

  • toExponential(fractionDigits): Trả về chuỗi biểu diễn số dưới dạng ký hiệu khoa học với fractionDigits chữ số sau dấu thập phân. let num = 123456; console.log(num.toExponential(2)); // "1.23e+5"

  • toFixed(digits): Trả về chuỗi biểu diễn số với digits chữ số sau dấu thập phân. let num = 3.14159; console.log(num.toFixed(2)); // "3.14"

  • toPrecision(precision): Trả về chuỗi biểu diễn số với precision chữ số tổng cộng. let num = 123.456; console.log(num.toPrecision(5)); // "123.46"

  • toString(radix): Trả về chuỗi biểu diễn số trong hệ cơ số radix (mặc định là 10). let num = 255; console.log(num.toString(16)); // "ff" (hệ thập lục phân) console.log(num.toString(2)); // "11111111" (hệ nhị phân)

  • valueOf(): Trả về giá trị nguyên thủy của đối tượng Number. let numObject = new Number(123); console.log(numObject.valueOf()); // 123

Sử dụng đối tượng Number#

Mặc dù bạn có thể sử dụng đối tượng Number để tạo các đối tượng số, nhưng trong hầu hết các trường hợp, bạn sẽ làm việc với các giá trị số nguyên thủy. Các giá trị số nguyên thủy sẽ tự động chuyển đổi thành đối tượng Number khi cần thiết, chẳng hạn khi bạn gọi các phương thức của đối tượng Number trên chúng. Điều này giúp viết mã đơn giản hơn và hiệu quả hơn.

` let num = 123.456;

console.log(num.toFixed(2)); // "123.46" console.log(num.toExponential(2)); // "1.23e+2" console.log(num.toPrecision(4)); // "123.5" `

Đối tượng Number và các phương thức liên quan cung cấp công cụ mạnh mẽ để xử lý và thao tác với các giá trị số trong JavaScript, giúp bạn dễ dàng thực hiện các tính toán và xử lý dữ liệu số trong các ứng dụng web của mình.

Bài liên quan trong # JavaScript

✓ Đã sao chép link