Bài 04: Khai báo biến trong TypeScript

Trong bài này chúng ta sẽ bàn tới các cách khai báo biến trong TypeScript nhé các bạn.

Ngoài từ khóa var ra TypeScript hỗ trợ thêm hai cách khai báo biến đó là sử dụng từ khóa letconst.  Thực ra thì hai cách này mình đã trình bày rất kỹ ở trong series học ES6 rồi, vì vậy bạn hãy đọc series đó trước khi đọc series này nhé. Tuy nhiên mình cũng sẽ trình bày lại một cách đơn giản để bạn dễ theo dõi bài hơn.

1. Khai báo biến với từ khoa var

Cách này khá đơn giản vì bạn đã sử dụng rất nhiều trong Javascript rồi phải không nhỉ :)

Ví dụ

var domain = 'freetuts.net';
var author = 'Nguyễn Văn Cường';
var series = new Array();

Sư dụng từ khóa var đồng nghĩa với việc bạn đã khai báo trong phạm vi toàn cầu, nghĩa là bạn có thể sử dụng nó ở mọi nơi từ bên trong hàm cho đến bên ngoài hàm.

Ví dụ

var domain = 'freetuts.net';
function showDomain()
{
    alert(domain);
}

// Kết quả: freetuts.net
showDomain();

Nếu bạn khai báo một biến nằm bên trong hàm thì đương nhiên biến đó chỉ mang tính chất là biến cục bộ, nghĩa là chỉ sử dụng được trong hàm đó mà thôi.

Ví dụ

function showDomain()
{
    var domain = 'freetuts.net';
}

// Lỗi vì biến domain là biến cục bộ trong hàm showDomain
alert(domain);

2. Khai báo biến với từ khóa let

Từ khóa let được giới thiệu ở phiên bản ECMAScript 6 (ES6). Khi sử dụng từ khóa let để khai báo biến thì biến đó chỉ hoạt động trong phạm vi khối của nó (block-scoped), xem bài khởi tạo biến với từ khóa let để hiểu rõ hơn.

Ví dụ

let a = 20;
let b = 30;
let c = a + b;

alert(c); // 50

Nếu sư dụng bên ngoài phạm vi của block-scoped thì sẽ bị lỗi, xem ví dụ.

let domain = 'freetuts.net';
if (domain == 'freetuts.net')
{
    let author = 'Blog của Nguyễn Văn Cường';
}

alert(author); // Lỗi vì biến author nằm trong phạm vi block-scoped khác

3. Khai báo biến với từ khóa const

Sử dụng từ khóa const để khai báo một biến và biến đó sẽ không thể nào thay đổi giá trị lại, trong các ngôn ngữ lập trình khác thì đây cũng có thể hiểu là khai báo hằng. Để hiểu rõ hơn bạn nên đọc bài const trong ES6. Khác với các ngôn ngữ khác là khi khai báo hằng thì thường ta chỉ gán được kiểu giá trị là kiểu chuỗi hoặc kiểu số, tuy nhiên trong Javascript nói chung và trong TypeScript nói riêng thì bạn có thể gán cho nó mọi kiểu dữ liệu.

Như ví dụ sau là hoàn toàn hợp lệ vì ta gán giá trị là một object.

const info = {
    name : "Nguyen Van Cuong",
    domain : "Freetuts.net"
};
 
console.log(info);

Nếu bạn cố tình thay đổi giá trị thì sẽ bị báo lỗi.

// Khai báo const
const domain = 'freetuts.net';
 
// Thay đổi giá trị => dòng này sẽ bị lỗi
domain = 'freetuts.net';

Giống như let, phạm vi hoạt động của biến const cũng bị hạn chế bởi block-scorped.

{
    // Khai báo const
    const domain = 'freetuts.net';
    console.log(domain);
}
{
    console.log(domain); // Bị lỗi vì biến domain nằm ở block-scoped phía trên
}

4. Lời kết

Như vậy là mình đã giới thiệu xong ba cách khai báo biến trong TypeScript, trong ba cách này thì mỗi cách lại có những tác dụng và ý nghĩa khác nhau nên bạn cần phải hiểu thì mới giúp chương trình trở nên tối ưu hơn. Chúc các bạn học tốt và hẹn gặp lại ở bài tiếp theo.

Hãy để lại link bài viết gốc khi chia sẻ bài viết này, mình sẽ report DMCA với những website lấy nội dung mà không để nguồn hoặc copy bài với số lượng lớn.

Nguồn: freetuts.net

Profile photo of adminTheHalfHeart

TheHalfHeart

Có sở thích viết tuts nên đã từng tham gia viết ở một số diễn đàn, đến năm 2014 mới có điều kiện sáng lập ra freetuts.net. Sinh năm 90 và có 1 vợ 2 con, thích ca hát và lập trình.

ĐĂNG BÌNH LUẬN: Đăng câu hỏi trên Group Facebook để được hỗ trợ nhanh nhất.