Kiểu dữ liệu trong JavaScript - JavaScript Data Types

  • Như

    Tác giả

    Như

  • Ngày đăng

    25 thg 10, 2023

  • Số lượt xem

    286 lượt xem


Nắm vững kiểu dữ liệu trong JavaScript và cách chúng ảnh hưởng đến xử lý dữ liệu trong ứng dụng web của bạn. Học cách lựa chọn kiểu dữ liệu phù hợp cho từng tình huống

JavaScript có 8 kiểu dữ liệu

  1. String
  2. Number
  3. Bigint
  4. Boolean
  5. Undefined
  6. Null
  7. Symbol
  8. Object

 

Kiểu dữ liệu đối tượng

  1. An object
  2. An array
  3. A date

 

// Numbers:
let length = 16;
let weight = 7.5;
// Strings:
let color = "Yellow";
let lastName = "Johnson";
// Booleans
let x = true;
let y = false;
// Object:
const person = {firstName:"John", lastName:"Doe"};
// Array object:
const cars = ["Saab", "Volvo", "BMW"];
// Date object:
const date = new Date("2022-03-25");

 

Ghi chú

Một biến JavaScript có thể chứa bất kỳ loại dữ liệu nào.

 

Khái niệm về kiểu dữ liệu

Trong lập trình, kiểu dữ liệu là một khái niệm quan trọng.

Để có thể thao tác trên các biến, điều quan trọng là phải biết về kiểu dữ liệu.

Nếu không có loại dữ liệu, máy tính không thể giải quyết vấn đề này một cách an toàn:

let x = 16 + "Volvo";

 

Việc thêm "Volvo" vào số 16 có ý nghĩa gì không? Nó sẽ tạo ra lỗi hay nó sẽ tạo ra kết quả?

JavaScript sẽ coi ví dụ trên là:

let x = "16" + "Volvo";

 

Ghi chú

Khi thêm một số và một chuỗi, JavaScript sẽ coi số đó là một chuỗi.

 

let x = 16 + "Volvo";  // 16Volvo
let x = "Volvo" + 16;  // Volvo16

 

JavaScript đánh giá các biểu thức từ trái sang phải. Trình tự khác nhau có thể tạo ra kết quả khác nhau :

let x = 16 + 4 + "Volvo";  // 20Volvo
let x = "Volvo" + 16 + 4;  // Volvo164

 

Trong ví dụ đầu tiên, JavaScript coi 16 và 4 là số cho đến khi đạt đến 'Volvo'.

Trong ví dụ thứ hai, vì toán hạng đầu tiên là một chuỗi nên tất cả các toán hạng đều được coi là chuỗi.

Kiểu trong JS là kiểu động (dynamic types)

JavaScript có các kiểu động (dynamic types). Điều này có nghĩa là cùng một biến có thể được sử dụng để chứa các loại dữ liệu khác nhau:

let x;       // Now x is undefined
x = 5;       // Now x is a Number
x = "John";  // Now x is a String

 

Chuỗi JS - JavaScript Strings

Chuỗi (hoặc văn bản) là một chuỗi ký tự như "John Doe".

Chuỗi được viết với dấu ngoặc kép. Bạn có thể sử dụng dấu ngoặc đơn hoặc dấu ngoặc kép:

let carName1 = "Volvo XC60";  // Using double quotes
let carName2 = 'Volvo XC60';  // Using single quotes

 

Bạn có thể sử dụng dấu ngoặc kép bên trong một chuỗi, miễn là chúng không khớp với dấu ngoặc kép xung quanh chuỗi:

// Single quote inside double quotes:
let answer1 = "It's alright";
// Single quotes inside double quotes:
let answer2 = "He is called 'Johnny'";
// Double quotes inside single quotes:
let answer3 = 'He is called "Johnny"';

 

Bạn sẽ tìm hiểu thêm về chuỗi trong những bài học sau.

 

Số JS - JavaScript Numbers

Tất cả các số JavaScript được lưu trữ dưới dạng số thập phân (dấu phẩy động).

Số có thể được viết dưới dạng có hoặc không có số thập phân:

// With decimals:
let x1 = 34.00;
// Without decimals:
let x2 = 34;

 

Ký hiệu hàm mũ

Các số cực lớn hoặc cực nhỏ có thể được viết bằng ký hiệu khoa học (số mũ):

let y = 123e5;    // 12300000
let z = 123e-5;   // 0.00123

 

Ghi chú

Hầu hết các ngôn ngữ lập trình đều có nhiều loại số:

Số nguyên (integers): byte (8 bit), short (16 bit), int (32 bit), long (64 bit)

Số thực (dấu phẩy động): float (32-bit), double (64-bit).

Số Javascript luôn có một loại: double (dấu phẩy động 64 bit).

Bạn sẽ tìm hiểu thêm về các con số trong bài học sau.

 

Số nguyên lớn - JavaScript BigInt

Tất cả các số JavaScript được lưu trữ ở định dạng dấu phẩy động 64 bit.

JavaScript BigInt là một kiểu dữ liệu mới (ES2020) có thể được sử dụng để lưu trữ các giá trị số nguyên quá lớn để được biểu thị bằng Số JavaScript thông thường.

let x = BigInt("123456789012345678901234567890");

 

Bạn sẽ tìm hiểu thêm về BigInt sau trong bài học sau.

 

JavaScript Booleans

Boolean chỉ có thể có hai giá trị: true hoặc false.

let x = 5;
let y = 5;
let z = 6;
(x == y)       // Returns true
(x == z)       // Returns false

 

Booleans thường được sử dụng trong xét điều kiện.

Bạn sẽ tìm hiểu thêm về booleans trong bài học sau.

 

Mảng JS - JavaScript Arrays

Mảng JavaScript được viết bằng dấu ngoặc vuông [].

Các mục của mảng được phân tách bằng dấu phẩy.

Đoạn mã sau khai báo (tạo) một mảng có tên là cars, chứa ba mục (car names):

const cars = ["Saab", "Volvo", "BMW"];

 

Các chỉ mục mảng bắt đầu từ 0, có nghĩa là mục đầu tiên là [0], mục thứ hai là [1], …

Bạn sẽ tìm hiểu thêm về mảng trong bài học sau.

 

Đối tượng JS - JavaScript Objects

Các đối tượng JavaScript được viết bằng dấu ngoặc nhọn {}.

Thuộc tính đối tượng được viết dưới dạng cặp tên : giá trị (name : value), phân tách bằng dấu phẩy.

const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};

 

Đối tượng (người) trong ví dụ trên có 4 thuộc tính: firstName, LastName, age và eyeColor.

Bạn sẽ tìm hiểu thêm về các đối tượng trong bài sau.

 

Toán tử typeof

Bạn có thể sử dụng toán tử typeof của JavaScript để tìm kiểu biến JavaScript.

Toán tử typeof trả về kiểu của biến hoặc biểu thức:

typeof ""             // Returns "string"
typeof "John"         // Returns "string"
typeof "John Doe"     // Returns "string"

 

typeof 0              // Returns "number"
typeof 314            // Returns "number"
typeof 3.14           // Returns "number"
typeof (3)            // Returns "number"
typeof (3 + 4)        // Returns "number"

 

Bạn sẽ tìm hiểu thêm về typeof trong bài sau.

 

Không xác định - Undefined

Trong JavaScript, một biến không có giá trị sẽ có giá trị không xác định. Kiểu của nó là undefined.

let car;    // Value is undefined, type is undefined

 

Bất kỳ biến nào cũng có thể được làm trống bằng cách đặt giá trị thành không xác định (undefined) . Kiểu cũng sẽ là undefined.

car = undefined;    // Value is undefined, type is undefined

 

Giá trị rỗng

Giá trị trống trong JavaScript là không có giá trị hoặc giá trị rỗng. Điều quan trọng là phải phân biệt giữa giá trị rỗng và giá trị không xác định (undefined).

let car = "";  // The value is "", the typeof is "string"

 

- Giá trị của car là chuỗi trống, tức là không có ký tự nào trong chuỗi đó.

- Kiểu dữ liệu của car là string (chuỗi).

Điều này có ý nghĩa là car đang chứa một chuỗi trống.

Còn nếu bạn không gán giá trị nào cho biến, thì kiểu dữ liệu của biến đó sẽ là undefined, và giá trị sẽ là giá trị không xác định. Ví dụ:

let bike; //  Value is undefined, type is undefined

 

Trong trường hợp này, biến bike có kiểu dữ liệu undefined vì nó chưa được gán giá trị cụ thể.


Tổng số đánh giá: 0

Xếp hạng: 5 / 5 sao

Liên Kết Chia Sẻ

Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.