Number và Boolean trong JavaScript

Ngày đăng: 25/09/2020   -    Cập nhật: 25/09/2020


Hôm nay chúng ta sẽ cùng tìm hiểu về numberboolean trong JavaScript. Bạn sẽ rất hay làm việc với các dữ liệu số và logic, vì thế đây là bài học không thể bỏ qua.

Number và Boolean trong JavaScript

Number và Boolean trong JavaScript

1. Number là gì?


Trong JavaScript có hai giá trị lưu trữ trong Number đó là số có dấu phảy động và số nguyên.

Ví dụ:



let x = 10// Không có dấu phảy động
let y = 10.05//Có dấu phảy động
 

Nếu số quá lớn hoặc quá nhỏ thì bạn có thể sử dụng số mũ để biểu diễn:


let x = 10e5// 1000000
let y = 10e-5// 0.00001
 

Đối với JavaScript các số luôn là 64 bit.

Trong bài tổng quan hôm trước thì mình có đề cập đến là trong nhiều ngôn ngữ khác có các kiểu dữ liệu số như integer, short, long,…. 

Nhưng trong JavaScript chỉ có khái niệm Number mà thôi.

Ngoài ra bạn có thể biểu diễn giá trị của Number ở dạng nhị phân, thập phân, thập lục phân, ….

Ví dụ:



let x = 0xfff// 4095
 

Trong JavaScript tất cả các dữ liệu liên quan đến những con số đều có dữ liệu là number. Để chứng minh, bạn dùng hàm typeof sẽ thấy kết quả trả về đều là number.


let x = 10e5// 1000000
let y = 10e-5// 0.00001
let z = 0xfff// 4095

console.log(typeof x); //number
console.log(typeof x); //number
console.log(typeof x); //number
console.log(typeof 10); //number
 

> Đọc thêm: Các kiểu dữ liệu trong JavaScript

2. Xử lý dữ liệu Number


Chúng ta sẽ tìm hiểu một số cách xử lý liên quan đến đối tượng Number và mình sẽ lưu ý một số vấn đề khi sử dụng.

2.1. Chuyển số sang chuỗi (number to string)


Để chuyển một biến ở kiểu Number sang kiểu String thì ta sử dụng phương thức soCanChuyenDoi.toString(type)

Hàm này có một tham số truyền vào là type và đây chính là kiểu mà bạn muốn chuyển, mặc định sẽ là hệ thập phân (hệ 10).

Các hệ số thường sử dụng :


  • Hệ nhị phân (2)
  • Hệ bát phân (8)
  • Hệ thập phân (10)
  • Hệ thập lục phân (16)

Ví dụ:


let x = 1706;
console.log(x.toString(2)); // 11010101010
console.log(x.toString(8)); // 3252
console.log(x.toString(10)); // 1706
console.log(x.toString(16)); // 6aa
 

2.2. Số vô cực (infinity)


Số vô cực là một kiểu Number và khi một biến có giá trị Infinity thì tức là nó đã vượt qua mức lưu trữ cho pehespneen theo mặc định nó sẽ chuyển về dạng infinity.

Vì nó cũng là một giá trị nên bạn có thể so sánh như các Number khác.

Một số cách để tạo ra số infinity:



console.log(Infinity); /* Infinity */
console.log(Infinity + 1); /* Infinity */
console.log(Math.pow(101000)); /* Infinity */
console.log(Math.log(0)); /* -Infinity */
console.log(1 / Infinity); /* 0 */
console.log(1 / 0); /* Infinity */
 

2.3.  Không phải số (NaN – Not a Number)


Nếu bạn thực hiện một phép toán mà liên quan đến Number nhưng nó vi phạm các quy tắc tính toán thì kết quả sẽ trả về NaN.

Ví dụ khi bạn thực hiện phép nhân số số cho một chuỗi thì kết quả sẽ là NaN



console.log(2 * "NgoTrung"); // NaN
 

Tuy nhiên: Nếu là một chuỗi Number thì kết quả sẽ thực thi được.


console.log(2 * "10"); // 20
 

Để kiểm tra một biến có phải là NaN không thì chúng ta sử dụng hàm isNaN()

Cú pháp:



isNaN(soCanKiemTra);
 


Trong đó: soCanKiemTra là tham số cần kiểm tra.

Ví dụ:



let x = 2 * "NgoTrung";
console.log(isNaN(x)); // true
 

2.4. Tạo một Object Numbers


Tạo biến kiểu thông thường thì mình làm hằng ngày, quá đơn giản rồi đúng không nào.

JavaScript là ngôn ngữ cũng được coi là hướng đối tượng nên Number cũng là một đối tượng mà đối tượng thì mình sẽ tạo biến theo kiểu đối tượng.

Nhưng sẽ khác một chút cách thông thường:



let x = 10// Number
let y = new Number(10); // Object
 

2.5. Làm tròn số


JavaScript cung cấp phương thức làm tròn sốtoFixed() có tác dụng làm tròn số đến n phần tử sau dấu.

Cú pháp:



soCanLamTron.toFixed(n);
 

Trong đó:

  • soCanLamTron: là số cần làm tròn
  • n: là số số bạn muốn làm tròn sau chấm.

Ví dụ:


let x = 10.123;
x.toFixed(2); // 10.12
x.toFixed(4); // 10.1230
 


Ngoài ra bạn cũng có thể sử dụng các phương thức làm tròn số của đối tượng Math trong JavaScript như:

  • round(): làm tròn đến số nguyên gần nhất
  • ceil(): Làm tròn lên đến số nguyên gần nhất
  • floor(): Làm tròn xuống đến số nguyên gần nhất

> Tham khảo thêm các thuộc tính, phương thức trong đối tượng Math trên Mozilla.

2.6. Hàm toPrecision()


Hàm toPrecision thì có tác dụng chuyển đổi một số về số có độ dài xác định.

Cú pháp:



soCanChuyenDoi.toPrecision(n);
 

Trong đó:

  • soCanChuyenDoi: là số chúng ta cần chuyển đổi
  • n: là độ dài của số mà bạn cần

VÍ dụ:


let x = 10.12345;
x.toPrecision(); // 10.13245
x.toPrecision(3); // 10.1
 

2.7. Hàm Number()


Hàm Number() có tác dụng chuyển đổi tất các các kiểu dữ liệu sang kiểu số, nếu như có trường hợp nào vi phạm quy tắc tính toán thì nó sẽ chuyển thành NaN.

Cú pháp:



Number(x);
 

Trong đó:

  • X: là số mà chúng ta muốn chuyển đổi.

Ví dụ:


let x = true;
Number(x); // 1
let y = false;
Number(y); // 0
let date = new Date();
Number(date); // 1601005581330
let z = "17";
Number(z); // 17
let e = "17 06";
Number(e); // NaN
 

2.8. Hàm parseInt()


Hàm parseInt() trong JavaScript có tác dụng chuyển một chuỗi sang dạng số nguyên.

Nhưng chuỗi có ký tự đầu khác số thì nó sẽ không chuyển được, còn ký tự đầu tiên là số nguyên thì chuyển được.

Cú pháp:




parseInt(x);
 

Trong đó:

  • x là thành phần mà bạn cần chuyển thành số nguyên.

Ví dụ:


parseInt(true); //NaN
parseInt(false); //NaN
parseFloat("10.12"); //10
parseInt("20"); //20
parseInt("3 7 9"); //3
parseInt("10 X"); //10
parseInt("Hello 10"); //NaN
 

2.9. Hàm parseFloat()


Hàm parseFloat() có tác dụng chuyển đổi chuỗi về dạng số thực. Nó tương tự như parseInt(), nếu chỗi có ký tự đầu tiên không phải là số thì không chuyển được.

Cú pháp:



parseFloat(x);
 

Trong đó:

  • x là thành phần cần chuyển thành số thực

Ví dụ:


parseFloat(true//NaN
parseFloat(flase)//NaN
parseFloat("10.12")//12.33
parseFloat("20")//20
parseFloat("3 7 9")//3
parseFloat('10 X')//10
parseFloat('Hell 10')//NaN
 


Chỉ với một số hàm đơn giản này mình nghĩ bạn đã có vốn kha khá để bắt đầu xử lý dữ liệu Number trong JavaScript rồi đấy.

3. Boolean trong JavaScript


Trong JavaScript hay bất kỳ ngôn ngữ lập trình nào khác boolean là kiểu dữ liệu logic, nó có hai giá trị true và false.

Boolean là đối tượng đại diện cho kiểu dữ liệu boolean, nó cũng bao gồm thêm cả các thuộc tính và phương thức khác.


3.1. Tạo đối tượng boolean mới


Đây là cú pháp tạo ra một đối tượng mới từ đối tượng Boolean trong JavaScript.


let doiTuongBoolean = new Boolean(value);
 

Trong đó:

  • doiTuongBoolean: Là tên đối tượng boolean
  • value: Là giá trị khởi tạo được gán cho đối tượng

3.2. Hàm toSource()


Hàm toSource() sẽ trả về chuỗi chứa nguồn đối tượng của boolean. Bạn có thể sử dụng chuỗi này để tạo một đối tượng tương đương.

Cú pháp:



doiTuongBoolean.toSource();
 

3.3. Hàm toString()


Hàm toString() trả về một chuỗi có giá trị: “true” hoặc “false” phụ thuộc vào giá trị của đối tượng.

Cú pháp:



doiTuongBoolean.toString();
 

Ví dụ:


let doiTuongBoolean = new Boolean();
console.log(doiTuongBoolean.toString()); // false
 

3.4. Hàm valueOf()


Hàm valueOf() sẽ trả về giá trị ban đầu của đối tượng.

Cú pháp:



doiTuongBoolean.valueOf();
 

Ví dụ:


let doiTuongBoolean = new Boolean();
console.log(doiTuongBoolean.valueOf()); // false
 

Tổng kết


Như vậy là qua bài này các bạn đã biết sơ bộ về thao tác, xử lý dữ liệu Number và Boolean. Hãy ghi nhớ các phương thức rất hữu ích này bạn nhé.

Hẹn gặp lại bạn ở bài học tiếp theo.

Bình luận Facebook
Đăng ký tư vấn
Nhân viên gọi điện tư vấn miễn phí sau khi đăng ký
Được cập nhật các ưu đãi sớm nhất
Hotline: 0383180086
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Hãy đăng ký để nhận những thông tin mới nhất về học bổng mới nhất tại NIIT - ICT Hà Nội
top
Đóng lại Đăng ký học tại NIIT - ICT Hà Nội
6260+ học viên đã theo học tại NIIT - ICT Hà Nội và có việc làm tốt trong ngành lập trình. Nắm lấy cơ hội ngay hôm nay!
Chọn khóa học
  • KHÓA HỌC LẬP TRÌNH FRONT END VỚI REACT.JS
  • KHÓA HỌC LẬP TRÌNH PHP WEB
  • Khóa học PHP Full stack [2023] cho người mới bắt đầu
  • Khóa học BIG DATA với Hadoop và Spark
  • Khóa học Lập trình Android tại Hà Nội
  • [Tuyển sinh 2023] Lập trình viên Quốc tế DigiNxt
  • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại Hà Nội
  • LẬP TRÌNH GAME
    • Khóa học Lập trình Game Unity
  • LẬP TRÌNH WEB FRONT END
    • KHÓA HỌC PYTHON HƯỚNG ĐỐI TƯỢNG
    • KHÓA HỌC ANGULAR & TYPESCRIPT (FRONT END)
  • LẬP TRÌNH WEB BACK END
    • LẬP TRÌNH JAVA WEB VỚI FRAME WORK
    • Lập trình Web với Django
    • Lập trình PHP với Laravel Framework
  • CHƯƠNG TRÌNH ĐÀO TẠO ỨNG DỤNG CÔNG NGHỆ
    • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại TP HCM
  • LẬP TRÌNH WEB FULL STACK
    • Khóa học Java Full stack (IJFD)
  • LẬP TRÌNH MOBILE
    • FRONT-END VỚI REACTJS VÀ REACT NATIVE
    • Lập trình Android Nâng cao
  • ĐÀO TẠO CHO DOANH NGHIỆP
    • KHÓA HỌC BUSINESS ANALYSIC TỪ CƠ BẢN ĐẾN NÂNG CAO 2023
    • Khóa học Magento: Làm chủ CMS TMĐT lớn nhất
    • Khóa học IOT: Xây dựng Sản phẩm IOT với Raspberry Pi
    • Khóa học Automation Testing Chuyên nghiệp
  • KHÓA HỌC DỰ ÁN
    • Học sử dụng bộ Office: Word, Excel, Power Point, Mail chuyên nghiệp
  • KHÓA HỌC KHÁC
    • VBA Excel Toàn Tập (Cơ Bản - Nâng Cao)
    • VBA Excel Nâng cao
    • Khóa học JMeter: Performance Testing
    • Khóa học Tester đạt chuẩn Quốc tế ISTQB Foundation Level
    • Khoá Học Tester đạt chuẩn quốc tế ISTQB Advanced Level
Bạn chưa chọn khóa học cần đăng ký
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Đăng ký học thành công!
Cảm ơn bạn đã đăng ký học tại NIIT - ICT HÀ NỘI!