Kiểu dữ liệu số trong JavaScript (Phần 2) - Các thuộc tính và phương thức đối với số
Khóa học JavaScript cơ bản

Danh sách bài học
Kiểu dữ liệu số trong JavaScript (Phần 2) - Các thuộc tính và phương thức đối với số
Nội dung bài viết Học nhanh
Dẫn nhập
Ở bài trước, chúng ta đã cùng tìm hiểu về Number trong JavaScript
Bài này, Kteam xin giới thiệu đến các bạn các thuộc tính, constructor và các phương thức của số trong JavaScript
Nội dung
Những yêu cầu về mặt kiến thức:
- Có hiểu biết về Number trong JavaScript
- Cài đặt sẵn môi trường nodejs
Và nội dung mà chúng ta sẽ cùng tìm hiểu:
- Các thuộc tính của Number
- Constructor Number
- Các phương thức đối với số trong JavaScript
Các thuộc tính của kiểu dữ liệu Number
Kiểu dữ liệu Number cho phép tính toán chính xác nhất với các số trong khoảng đến
(tức là, với các số lớn hơn, hãy sử dụng
bigint – một kiểu dữ liệu số khác mà Kteam sẽ giới thiệu tới các bạn ở bài sau)
Các giá trị này lần lượt là Number_MIN_SAFE_INTEGER và Number_MAX_SAFE_INTEGER.
Các bạn có thể chạy code để chứng thực điều đó.
Trong JavaScript, có 2 giá trị đặc trưng cho dương vô cùng
và âm vô cùng
. Đó lần lượt là
Number.POSITIVE_INFINITY và
Number.NEGATIVE_INFINITY. Trong JavaScript , 2 giá trị trên được kí hiệu là
Infinity và -Infinity
Constructor Number
Cú pháp:
Number(<value>)
Tác dụng: tạo một giá trị kiểu Number mới từ <value>. Đó có thể là một số, hay là NaN
Một giá trị Number sẽ được tạo ra nếu <value> là Number-String (Quy ước những chuỗi chỉ gồm các kí tự số là Number-String), trong các trường hợp khác là NaN.
Các phương thức với số trong JavaScript
Ở đây Kteam sẽ chỉ đề cập tới những phương thức cơ bản nhất, để các bạn dễ hiểu và cũng dễ nắm bắt trọng tâm hơn.
Các phương thức xác định
Phương thức isNaN
Cú pháp:
Number.isNaN(<value>)
Tác dụng:
- Xác định xem <value> có phải là NaN hay không.
Phương thức isFinite
Cú pháp:
Number.isFinite(<value>)
Tác dụng:
- Xác định xem giá trị được truyền có phải là một số hữu hạn hay không.
- Nếu <value> thuộc một trong 2 giá trị: Infinity hoặc -Infinity thì trả về false. Ngược lại trả về true. Riêng đối với NaN, thì phương thức này trả về false.
Ví dụ:
Phương thức isInteger
Cú pháp:
Number.isInteger(<value>)
Tác dụng:
- Xác định giá trị được truyền có phải là số nguyên hay không.
- Trả về true nếu <value> là một số nguyên, ngược lại trả về false. Đối với Infinity và NaN, phương thức này cũng trả về false.
Ví dụ:
Các phương thức định dạng
Phương thức toExponential
Cú pháp:
<Number>.toExponential(<fractionDigits>)
Tác dụng:
- Trả về một giá trị chuỗi (Number-String), là số <Number> ban đầu được viết dưới dạng thu gọn thành tích của một số thực nhân với lũy thừa của 10, với <fractionDigits> là số lượng chữ số được lấy sau dấu phẩy (trong JavaScript là dấu chấm).
Lưu ý: giá trị của <fractionDigits> phải nằm giữa 0 và 100, giá trị này được mặc định là số chữ số thuộc phần thập phân của <Number>
Ví dụ:
Phương thức toFixed
Cú pháp:
<Number>.toFixed(<digits>)
Tác dụng:
- Làm tròn số theo digits (làm tròn và lấy <digits> số ở phần thập phân), giá trị trả về cũng là một chuỗi. Theo mặc định, nếu không được người dùng xác định, thì <digits> bằng 0.
Ví dụ:
Phương thức parseFloat
Cú pháp:
Number.parseFloat(<string>)
Tác dụng:
- Tách và xuất ra một số từ chuỗi <string> cho trước. Chương trình sẽ lấy các kí tự từ bên trái sang bên phải của <string>, và lấy nhiều kí tự số nhất có thể. Nếu không thể lấy được ít nhất một kí tự số, phương thức trả về NaN.
Ví dụ:
Phương thức parseInt
Cú pháp:
Number.parseInt(<string>, <radix>)
Tác dụng:
Phương thức này thực hiện 2 công việc sau:
- Phân tích <string> giống như cách phân tích của parseFloat (nhưng không lấy dấu chấm, tức là chỉ lấy các kí tự số từ trái sang), sau đó chuyển thành số. Nếu không lấy được bất kì kí tự nào, tự động trả về NaN.
- Từ số mới được chuyển và hệ cơ số <radix>, chuyển về giá trị tương ứng ở hệ thập phân.
Chú ý: <radix> nằm trong khoảng 2 ...16.
Ví dụ:
Math object trong JavaScript
Để có thể làm việc một cách hiệu quả hơn với số, Javascript hỗ trợ một built-in object (đối tượng dựng sẵn) được gọi là Math
Vài thuộc tính của Math:
- Math.E: Hằng số euler, xấp xỉ 2.718
- Math.PI: Số Pi, xấp xỉ 3.14159
- Math.SQRT1_2: Căn bậc 2 của
, xấp xỉ 0.707.
Bên cạnh các thuộc tính cơ bản, Math cũng có các phương thức giúp các bạn đơn giản hóa hơn khi làm việc với toán.
PHƯƠNG THỨC |
NỘI DUNG |
Math.abs(x) |
Trả về |
Math.ceil(x) |
Trả về số nguyên nhỏ nhất lớn hơn hoặc bằng x. |
Math.cbrt(x) |
Trả về |
Math.max(n1, n2, n3, n4, n5, …) |
Trả về số lớn nhất trong một dãy các số |
Math.min(n1, n2, n3, n4, n5, …) |
Trả về số bé nhất trong một dãy các số |
Ví dụ:
Lưu ý: Math hoạt động với Number, không hoạt động với BigInt.
Ở trên chỉ là một vài phương thức cơ bản nhất của Math. Để tìm hiểu thêm, các bạn có thể tham khảo tại: Math in JavaScript
Kết luận
Ở bài này, chúng ta đã cùng tìm hiểu kĩ hơn về số trong Javascript
Ở bài sau, chúng ta sẽ cùng tìm hiểu một kiểu dữ liệu khác: BigInt. Tuy là “khác” nhưng nó vẫn là số =))
Cảm ơn các bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý của mình để phát triển bài viết tốt hơn. Đừng quên “Luyện tập – Thử thách – Không ngại khó”.
Tải xuống
Tài liệu
Nhằm phục vụ mục đích học tập Offline của cộng đồng, Kteam hỗ trợ tính năng lưu trữ nội dung bài học Kiểu dữ liệu số trong JavaScript (Phần 2) - Các thuộc tính và phương thức đối với số dưới dạng file PDF trong link bên dưới.
Ngoài ra, bạn cũng có thể tìm thấy các tài liệu được đóng góp từ cộng đồng ở mục TÀI LIỆU trên thư viện Howkteam.com
Đừng quên like và share để ủng hộ Kteam và tác giả nhé!

Thảo luận
Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.
Tác giả/Dịch giả
Khóa học
Nếu bạn đang muốn bắt đầu học JavaScript thì đây chính là khóa học dành cho bạn. Trong khóa học này, Kteam sẽ cung cấp cho những kiến thức cơ bản nhất của ngôn ngữ lập trình JavaScript.
Khóa học này không đòi hỏi kiến thức nền tảng nhiều, nên giả sử như bạn chưa biết gì về lập trình, bạn vẫn có thể tham gia. Do đó dù bạn có là một người trái ngành cũng có thể tiếp cận - Đồng thời bạn cũng không cần phải là một thiên tài toán học để tham gia khóa học này 😉.
Number.parsefloat ko ra được như bài tập bạn ơi . Nó báo lỗi