Các kiểu dữ liệu trong Javascript | Series Javascript căn bản | Bài 6

Chào mừng các bạn đã đến với bài giảng tiếp theo của series Javascript căn bản!

Trong bài giảng trước, ta đã tìm hiểu về 2 loại thành phần có thể chứa dữ liệu trong Javascript (Biến và Hằng), cũng như cách viết câu lệnh để truyền (gán) dữ liệu vào Biến và Hằng. Trong bài viết này, ta sẽ tìm hiểu về các kiểu dữ liệu trong Javascript để xem Biến và Hằng có thể chứa những dữ liệu gì nhé.

Cùng bắt đầu thôi!

Khái niệm kiểu dữ liệu (Data type)

Kiểu dữ liệu (Data type) là gì?

Trong lập trình, kiểu dữ liệu là khái niệm ám chỉ sự phân loại dữ liệu (loại = kiểu). Mỗi kiểu dữ liệu sẽ có chung một hay nhiều đặc điểm nhất định.

Có bao nhiêu kiểu dữ liệu trong Javascript?

Bằng cách dùng hàm typeof để xác định kiểu dữ liệu của một số dữ liệu đặc trưng trong Javascript, hoccode.org nhận thấy rằng, có tổng cộng 7 kiểu dữ liệu chính trong Javascript là: number, bigInt, string, boolean, object, functionsymbol, function.

Khi không thể xác định được kiểu dữ liệu có trong một Biến hay Hằng, Javascript sẽ xếp vào undefined

Và bây giờ, ta sẽ cùng tìm hiểu từng kiểu một.

Dữ liệu dạng số: numberbigInt

Dữ liệu xếp vào kiểu number là số (số nguyên lẫn thập phân) có giá trị từ -(253 − 1) đến (253 − 1)

Dữ liệu xếp vào kiểu bigInt là số (số nguyên lẫn thập phân) có giá trị nhỏ hơn -(253 − 1) và lớn hơn (253 − 1)

Ví dụ và cách để truyền (gán) dữ liệu:

var a = 100; // Dữ liệu của biến a được xếp vào kiểu number
var b = -25.5; // Dữ liệu của biến b được xếp vào kiểu number
const c = 9007199254740991;// Dữ liệu của hằng c được xếp vào kiểu bigInt

Điểm khác biệt duy nhất giữa numberbigInt chính là nằm ở mức giá trị con số. Do đó, trong thực tế có rất ít người biết hoặc chú ý đến sự tồn tại của bigInt bởi ít khi nào ta cần sử dụng một con số nhỏ hơn  -(253 − 1) và lớn hơn (253 − 1).

Đặc điểm nổi bật của dữ liệu kiểu numberbigInt

  • Có thể dùng để tính toán (cộng, trừ, nhân, chia)

Dữ liệu dạng chuỗi: string

Dữ liệu được xếp vào kiểu string là các ký tự văn bản thuần tuý, có thể một hoặc chuỗi nhiều ký tự.

Ví dụ và cách để truyền (gán) dữ liệu:

var a = "x"; // Dữ liệu của biến a được xếp vào kiểu string
var b = "1234"; // Dữ liệu của biến b được xếp vào kiểu string
var c = 'Hello world!'; // Dữ liệu của biến c được xếp vào kiểu string
const d = "Hôm nay tôi học lập trình. Thực ra học lập trình cũng rất thú vị chứ không khô khan như mọi người thường nghĩ! Ahihi =))))"; // Dữ liệu của hằng d được xếp vào kiểu string

Đặc điểm nổi bật của dữ liệu kiểu string:

  • Luôn được đặt trong cặp dấu nháy đôi ("...") hoặc nháy đơn ('...')
  • Không thể dùng để tính toán cho dù giá trị có là chữ số
  • Có thể dùng để nối với một dữ liệu khác cùng thuộc kiểu string.

Dữ liệu dạng logic: boolean

Dữ liệu được xếp vào kiểu boolean là duy nhất 2 giá trị true (đúng) và false (sai).

Bên cạnh người dùng có thể truyền (gán) dữ liệu boolean vào một Biến hoặc Hằng, dữ liệu boolean cũng có thể được tạo ra với vai trò là kết quả của một biểu thức logic.

Ví dụ:

var a = true;
var b = (1== 2); // Kết quả của biểu thức chính là giá trị false;


Dưới đây là những kiểu dữ liệu phức tạp hơn. Chính vì thế, trong bài viết này, hoccode.org chỉ điểm mặt chúng và nêu lên một số đặc điểm cơ bản để các bạn có thể có một cái nhìn tổng quát trước, và sẽ có những bài giảng riêng phân tích và hướng dẫn từng kiểu dữ liệu một.

Dữ liệu dạng cấu trúc: object

Dữ liệu được xếp vào kiểu object là những dữ liệu mà trong đó bao gồm nhiều thành phần giá trị, và các thành phần giá trị được sắp xếp theo một cấu trúc, trật tự nhất định.

Hầu hết các Dữ liệu kiểu object được phân ra thành 7 nhóm nhỏ: Object, Array, Map, Set, WeakMap, WeakSet và Date.

Lưu ý: Giá trị null cũng được xếp vào kiểu object

Ví dụ:

var x = null; // Dữ liệu của Biến x được xếp vào kiểu object
var a = {id: '1', name: table}; // Dữ liệu của Biến a được xếp vào kiểu object -> Nhóm Object

const b = [1, 3, 5, 7, 9]; // Dữ liệu của Hằng b được xếp vào kiểu object -> Nhóm Array

Dữ liệu bảo mật mang tính đặc trưng: symbol

Dữ liệu được xếp vào kiểu symbol là những dữ liệu được tạo ra bằng hàm Symbol()

Ví dụ:

var a = Symbol('key1');
const b = Symbol ('key2');

Symbol được dùng vào những trường hợp như tạo ra những dữ liệu có cấu trúc mà trong đó người lập trình muốn giấu đi một số thành phần giá trị nhạy cảm với mục đích bảo mật.

Đặc điểm nổi bật của dữ liệu kiểu symbol:

  • Tính độc nhất (unique): Bạn không thể nào tạo ra được 2 hoặc nhiều dữ liệu symbol giống nhau
  • Tính bảo mật: Bạn không thể truy cập vào thành phần bên trong một symbol theo phương pháp thông thường.

Dữ liệu dạng hàm: function

Về mặt cơ bản, function (hàm) là một thành phần trong Javascript (tương tự như Biến, Hằng...) có thể chứa một kịch bản Javascript (một hay nhiều statement) giúp người lập trình có thể thực hiện một action (hành động) một cách dễ dàng và ngắn gọn. Tuy nhiên, chính vì việc người lập trình có thể gán function vào một Biến hay Hằng, cũng như kết quả của một function có thể trả về dữ liệu thuộc một trong các kiểu trên, nên function cũng được coi là một kiểu dữ liệu.

Ví dụ:

var f1 = alert('Đây là một function');
var f2 = console.log('Đây là một function');


Đến đây, ta có thể nắm được cơ bản một Biến hay Hằng có thể chứa những giá trị gì rồi. Nếu các bạn có những thắc mắc nào liên quan đến nội dung bài viết, hãy để lại comment phía bên dưới nhé. Nếu các bạn cảm thấy nội dung bài viết hay và hữu ích, hãy để lại 1 like, share hoặc đánh giá để ủng hộ tinh thành của team chúng mình nhé.

Trong bài giảng tiếp theo, ta sẽ tìm hiểu về chủ đề làm bật lên những đặc trưng của 3 kiểu dữ liệu number, bigInt và Boolean: Toán tử trong Javascript.

Chào tạm biệt và hẹn gặp lại!

Đăng ký để nhận được thông báo mỗi khi có bài viết mới!