Giới Thiệu
Trong thế giới lập trình đầy màu sắc của Javascript, số (number) đóng vai trò vô cùng quan trọng. Bài viết này sẽ dẫn dắt bạn vào một hành trình thú vị, khám phá mọi ngóc ngách về kiểu dữ liệu "số" trong Javascript, từ cách biểu diễn, làm tròn, xử lý sai số đến những hàm toán học hữu ích. Hãy cùng nhau chinh phục những thử thách và tạo nên những dòng code đầy mê hoặc!
Biểu Diễn Số Trong Javascript: Không Chỉ Là Số 0 Và Số 1
Javascript cung cấp cho chúng ta hai loại "số" chính là:
- Số thông thường (Number): Được dùng thường xuyên nhất, biểu diễn số thực dấu phẩy động theo chuẩn IEEE-754.
- Số nguyên lớn (BigInt): Khi bạn cần làm việc với những con số khổng lồ, vượt ngoài tầm của "số thông thường".
Viết Số Lớn Dễ Nhìn Hơn
Thay vì viết let oneBillion = 1000000000;
khiến bạn hoa mắt, Javascript cho phép sử dụng dấu gạch dưới _
để phân cách các chữ số, ví dụ: let oneBillion = 1_000_000_000;
. Dễ nhìn hơn rất nhiều phải không nào?
Ký Hiệu Khoa Học: Khi Số Quá Lớn Hoặc Quá Nhỏ
Javascript sử dụng chữ cái e
(viết tắt của "exponent") để biểu diễn số mũ của 10.
1e3
tương đương với 1 nhân với 10 mũ 3, tức là 1000.1e-6
tương đương với 1 chia cho 10 mũ 6, tức là 0.000001.
Hệ Cơ Số: Thập Phân, Thập Lục Phân, Bát Phân Và Nhị Phân
Ngoài hệ thập phân quen thuộc, Javascript còn cho phép biểu diễn số ở hệ thập lục phân (cơ số 16), bát phân (cơ số 8) và nhị phân (cơ số 2).
- Hệ thập lục phân:
0xff
(255) - Hệ bát phân:
0o377
(255) - Hệ nhị phân:
0b11111111
(255)
Làm Tròn Số Trong Javascript: Từ "Sàn Nhà" Đến "Trần Nhà"
Javascript cung cấp cho chúng ta một bộ công cụ làm tròn số vô cùng hữu ích:
Math.floor(x)
: Làm tròn xuống đến số nguyên gần nhất.Math.ceil(x)
: Làm tròn lên đến số nguyên gần nhất.Math.round(x)
: Làm tròn đến số nguyên gần nhất.Math.trunc(x)
: Xóa bỏ phần thập phân, giữ nguyên phần nguyên.
Làm Tròn Số Thực Với toFixed(n)
Phương thức toFixed(n)
sẽ làm tròn số và trả về kết quả dưới dạng chuỗi với n chữ số sau dấu phẩy. Ví dụ:
let a = 1.2345; let b = a.toFixed(2); // b = "1.23"
Sai Số Với Số Trong Javascript: Khi Máy Tính Cũng Phải "Làm Tròn"
Do giới hạn về khả năng lưu trữ, máy tính không thể biểu diễn chính xác tất cả các số thực. Điều này dẫn đến những sai số không mong muốn, ví dụ:
console.log(0.1 + 0.2 === 0.3); // Kết quả là false!
Để giải quyết vấn đề này, bạn có thể sử dụng phương pháp nhân-rồi-chia hoặc phương thức toFixed(n)
.
Kiểm Tra Số Với isNaN
Và isFinite
isNaN(value)
: Xác Định Giá Trị NaN
Hàm isNaN(value)
kiểm tra xem một giá trị có phải là NaN (Not a Number) hay không.
isFinite(value)
: Kiểm Tra Số Hữu Hạn
Hàm isFinite(value)
kiểm tra xem một giá trị có phải là số hữu hạn hay không (khác Infinity, -Infinity và NaN).
Hàm parseInt
Và parseFloat
: Tách Số Từ Chuỗi
parseInt(string, radix)
: Trả về số nguyên được phân tích từ chuỗi đầu vào.parseFloat(string)
: Trả về số thực được phân tích từ chuỗi đầu vào.
Ví dụ:
parseInt("100px"); // Trả về 100 parseFloat("1.1em"); // Trả về 1.1
Hàm Toán Học Trong Javascript
Javascript cung cấp một loạt các hàm toán học hữu ích thông qua đối tượng Math
:
Math.abs(x)
: Giá trị tuyệt đối.Math.sqrt(x)
: Căn bậc hai.Math.pow(x, y)
: x mũ y.Math.min(x1, x2, ...)
: Giá trị nhỏ nhất.Math.max(x1, x2, ...)
: Giá trị lớn nhất.Math.random()
: Số ngẫu nhiên từ 0 đến 1.
Lời Kết
Bài viết đã cung cấp cho bạn cái nhìn tổng quan về kiểu dữ liệu "số" trong Javascript. Từ cách biểu diễn, làm tròn, xử lý sai số đến những hàm toán học hữu ích. Hy vọng bài viết đã trang bị cho bạn kiến thức vững chắc để tự tin sử dụng "số" trong Javascript.