Hướng dẫn boolean trong javascript

JavaScript Boolean mô tả một trong hai giá trị: true (đúng) hoặc false (sai).


  • Giá trị Boolean
  • Hàm Boolean()
  • So sánh và Điều kiện
  • Tất cả cái gì là giá trị “Thực” đều là True
  • Tất cả những gì không phải là “Thực” đều là False
  • Các phương thức và thuộc tính của Boolean

Giá trị Boolean

Khi lập trình rất thường xuyên bạn sẽ cần một kiểu dữ liệu chỉ có thể có một trong hai giá trị, như:

  • YES / NO (CÓ / KHÔNG)
  • ON / OFF (BẬT / TẮT)
  • TRUE / FALSE (ĐÚNG / SAI)

Vì mục đích đó, JavaScript có kiểu dữ liểu Boolean. Nó chỉ có giá trị true hoặc false.


Hàm Boolean()

Bạn có thể sử dụng hàm Boolean() để biết xem một biểu thức (hoặc một biến) có đúng hay không. Ví dụ:

Boolean(10 > 9) // trả về kết quả true

Hoặc thậm chí dễ hơn. Ví dụ:

(10 > 9) // cũng trả về về kết quả true
10 > 9  // cũng trả về kết quả true

Lưu ý: các câu lệnh của JS có phân biệt chữ HOA, chữ thường, do vậy câu lệnh Boolean() sẽ hoạt động, trong khi boolean() thì không.


So sánh và Điều kiện

Chương so sánh (comparisons) trong JS cung cấp đầy đủ cái nhìn tổng quan về toán tử so sánh.

Chương điều kiện (conditions) trong JS cung cấp đầy đủ cái nhìn về câu lệnh điều kiện.

Dưới đây là một số ví dụ:

Toán tửMô tảVí dụ
== bằng với if (ngay == "thu_hai")
> lớn hơn if (tien_luong > 9000)
< nhỏ hơn if (tuoi < 18)

Giá trị Boolean của biểu thức là nền tảng cho các phép so sánh và điều kiện trong JavaScript.


Tất cả cái gì là giá trị “Thực” đều là True

Các ví dụ:

  • 100
  • 3.14
  • -15
  • “Xin chào”
  • “false”
  • 7 + 1 + 3.14
  • 5 < 6

Tất cả những gì không phải là “Thực” đều là False

Giá trị Boolean của 0 (zero) là false:

var x = 0;
Boolean(x);  // trả về kết quả false

Giá trị Boolean của -0 là false:

var x = -0;
Boolean(x);  // trả về kết quả false

Giá trị Boolean của “” (chuỗi rỗng) là false:

var x = "";
Boolean(x);   // trả về kết quả false

Giá trị Boolean của undefined (không xác định) là false:

var x;
Boolean(x);  // trả về kết quả false

Giá trị Boolean của nullfalse:

var x = null;
Boolean(x);   // trả về kết quả false

Giá trị Boolean của false là (bạn đoán đúng rồi) false:

var x = false;
Boolean(x);   // trả về kết quả false

Giá trị Boolean của NaN là false:

var x = 10 / "H";
Boolean(x);  // trả về kết quả false

Các phương thức và thuộc tính của Boolean

Giá trị nguyên thuỷ như truefalse, không có thuộc tính hoặc phương thức (bởi vì chúng 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ũng được cung cấp cho các giá trị nguyên thuỷ, bởi vì JavaScript xử lý giá trị nguyên thuỷ như đối tượng khi thực thi các phương thức và thuộc tính.

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.

Hướng dẫn 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 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ụ:

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 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ụ:

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:

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

Ví dụ:

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 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:

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ụ:

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ụ:

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:

Trong đó:

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

Ví dụ:

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:

Trong đó:

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

Ví dụ:

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:

Trong đó:

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

Ví dụ:

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.