JavaScript

Có các kiểu dữ liệu nào trong JavaScript?

Có các kiểu dữ liệu nào trong JavaScript?
Được viết bởi Minh Hoàng

Series lập trình JavaScript, ngôn ngữ lập trình linh động, thực thi phía client.

Các kiểu dữ liệu JavaScript

– Một trong những đặc điểm cơ bản nhất của ngôn ngữ lập trình là tập hợp các kiểu dữ liệu mà nó hỗ trợ. Đây là các loại giá trị có thể được thể hiện và thao tác bằng ngôn ngữ lập trình.

Kiểu dữ liệu (data types) là một khái niệm quan trọng trong lập trình. Để có thể thao tác với biến, điều quan trọng là phải biết biến đó thuộc kiểu dữ liệu nào.

1. Kiểu dữ liệu JavaScript

1. Kiểu dữ liệu JavaScript

– JavaScript cho phép bạn làm việc với 3 kiểu dữ liệu nguyên thủy (primitive data types):

  1. Kiểu số Number, ví dụ: 123, 8.6
  2. Kiểu chuỗi String, ví dụ: “Minh Hoang”, ‘blog’
  3. Kiểu Boolean, ví dụ: true hoặc false

– JavaScript cũng định nghĩa hai kiểu dữ liệu đơn giản: nullundefined. Mỗi loại chỉ xác định một giá trị duy nhất. Ngoài các kiểu dữ liệu cơ bản này, JavaScript hỗ trợ các kiểu dữ liệu phức tạp hơn như Array, Object, Date.

1.1. Kiểu số Number

JavaScript chỉ có một loại số.

– Các số có thể được viết có, hoặc không có dấu thập phân:

Ví dụ:
[code language=”javascript”]8.6

2017[/code]

– Số cực lớn hoặc cực nhỏ có thể được viết bằng ký hiệu khoa học (theo cấp số nhân):

Ví dụ:
[code language=”javascript”]var y = 123e5; // 12300000
var z = 123e-5; // 0.00123[/code] Try it »

Xem chi tiết: Kiểu dữ liệu Number trong JavaScript.

1.2. Kiểu chuỗi String

– Các chuỗi có thể được viết trong dấu nháy kép hoặc nháy đơn:

Ví dụ:
[code language=”javascript”]"Minh Hoàng Blog"

‘Minh Hoàng Blog'[/code] Try it »

– Bạn có thể sử dụng chung dấu nháy kép và dấu nháy đơn trong một chuỗi miễn sao chúng khớp theo từng cặp với nhau:

Ví dụ:
[code language=”javascript”]var answer = "It’s alright!"; // Một dấu nháy đơn bên trong cặp dấu nháy kép
var answer = "Tên tôi là ‘Minh’"; // Cặp dấu nháy đơn bên trong cặp dấu nháy kép
var answer = ‘Tên tôi là "Minh"’; // Cặp dấu nháy kép bên trong cặp dấu nháy đơn[/code] Try it »

Xem chi tiết: Kiểu dữ liệu String trong JavaScript.

1.3. Kiểu Boolean

Kiểu dữ liệu Boolean chỉ có hai giá trị: true hoặc false.

Ví dụ:
[code language=”javascript”]var x = 5;
var y = 5;
var z = 6;
(x == y) // Return true
(x == z) // Return false[/code]

Biến JavaScript có thể nhận giá trị của nhiều kiểu dữ liệu khác nhau

– JavaScript có kiểu dữ liệu động.

– Điều này có nghĩa là cùng một biến có thể được sử dụng để lưu trữ các loại dữ liệu khác nhau:

Ví dụ:
[code language=”javascript”]var x; // Bây giờ x là undefined
x = 2017; // Bây giờ x là một Number
x = "Minh Hoàng"; // Bây giờ x là một String[/code] Try it »
2. Kiểu mảng Array JavaScript

2. Kiểu mảng Array JavaScript

– Các mảng JavaScript được viết bằng dấu ngoặc vuông […]

– Các phần tử trong mảng được phân cách nhau bằng dấu phẩy. Được index (chỉ mục) bắt đầu từ 0, phần tử đầu tiên là [0], thứ hai là [1],…

– Đoạn mã sau khai báo (tạo) một mảng xe ô tô, có chứa ba phần tử:

Ví dụ:
[code language=”javascript”]var arrCars = ["Toyota","Volvo","BMW"];[/code] Try it »
3. Kiểu đối tượng Object JavaScript

3. Kiểu đối tượng Object JavaScript

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

– Các thuộc tính của đối tượng được viết thành các cặp tên (name): giá trị (value), được phân tách bằng dấu phẩy.

Ví dụ:
[code language=”javascript”]var person = {firstName:"Minh", lastName:"Hoàng", age:31};[/code] Try it »
4. Kiểu undefined và null trong JavaScript

4. Kiểu undefined và null trong JavaScript

Undefined

– Trong JavaScript, một biến không có giá trị thì giá trị sẽ là undefined (không xác định). Và typeof (data type) cũng là undefined.

Ví dụ:
[code language=”javascript”]var url; // Giá trị là undefined, loại dữ liệu cũng là undefined[/code] Try it »

– Bất kỳ biến nào cũng có thể được làm rỗng (empty), bằng cách đặt giá trị thành undefined (không xác định). Và lúc này typeof (data type) cũng là undefined.

Ví dụ:
[code language=”javascript”]url = undefined; // Giá trị là undefined, loại dữ liệu cũng là undefined[/code] Try it »

Ý nghĩa của undefined là “giá trị không được gán”.

– Một giá trị rỗng (Empty) là giá trị không có gì, nhưng xác định được loại dữ liệu.

Ví dụ:
[code language=”javascript”]var url = ""; // Giá trị là "", loại dữ liệu là "string"[/code] Try it »

Null

– Trong JavaScript null là “nothing” (“không có gì”) và kiểu dữ liệu của null là một đối tượng (object).

“null” trả về kiểu “đối tượng-object” – đây là lỗi trong ngôn ngữ, “null” không phải là một đối tượng trên thực tế. Nó phải là null.

– Trong JavaScript, null không phải là “tham chiếu đến đối tượng không tồn tại” hoặc “con trỏ rỗng” giống như một số ngôn ngữ khác.

– Đó là một giá trị đặc biệt có ý nghĩa “nothing”, “empty” hoặc “value unknown”.

– Bạn có thể làm rỗng (empty) một đối tượng (object) bằng cách set nó thành null:

Ví dụ:
[code language=”javascript”]// Khai báo đối tượng và khởi tạo giá trị
var person = {firstName:"Minh", lastName:"Hoàng", age:31, eyeColor:"black"};

/*
* Set "null" object
* Bây giờ: value là "null", nhưng data type vẫn là "object"
*/
person = null;[/code] Try it »

– Bạn cũng có thể làm trống (empty) một đối tượng bằng cách set nó thành undefined:

Ví dụ:
[code language=”javascript”]// Khai báo đối tượng và khởi tạo giá trị
var person = {firstName:"Minh", lastName:"Hoàng", age:31, eyeColor:"black"};

/*
* Set "undefined" object
* Bây giờ: cả value và data type đều là "undefined"
*/
person = undefined;[/code] Try it »

Sự khác nhau của undefined và null

undefinednull có giá trị bằng nhau nhưng khác nhau về loại (data type):

Ví dụ:
[code language=”javascript”]typeof undefined // undefined
typeof null // object

null === undefined // false (vì cùng value, nhưng khác nhau về type)
null == undefined // true (vì cùng value)[/code] Try it »

Có thể bạn quan tâm: Toán tử typeof trong JavaScript.

Cảm ơn bạn đã theo dõi. Đừng ngần ngại hãy cùng thảo luận với chúng tôi!

Giới thiệu

Minh Hoàng

Xin chào, tôi là Hoàng Ngọc Minh, hiện đang làm BrSE, tại công ty Toyota, Nhật Bản. Những gì tôi viết trên blog này là những trải nghiệm thực tế tôi đã đúc rút ra được trong cuộc sống, quá trình học tập và làm việc. Các bài viết được biên tập một cách chi tiết, linh hoạt để giúp bạn đọc có thể tiếp cận một cách dễ dàng nhất. Hi vọng nó sẽ có ích hoặc mang lại một góc nhìn khác cho bạn[...]

Translate »