Phát hiện chặn quảng cáo

Xin lỗi bạn, mình có đặt quảng cáo để lấy kinh phí duy trì trang, nếu bạn không thấy phiền có thể tắt chức năng chặn quảng cáo và tải lại trang.

Tiếp tục xem
Tải lại
Thứ Sáu , 26 Tháng Mười Một 2021

Hướng dẫn TypeScipt #5: Dynamic (any) Types

Trong bài Hướng dẫn TypeScipt #3 và bài Hướng dẫn TypeScipt #4 mình đã đề cập tới các loại type cơ bản có trong typescript hay sử dụng trong quá trình làm việc nhất. Trong bài này, mình sẽ đề cập tới loại type động, đó chính là any.

Dynamic (any) Types

Type động là việc bạn định nghĩa dữ liệu có thể gán bất kì loại dữ liệu nào, nó chẳng khác gì bạn sử dụng biến trong Javascript thuần. Chính vì tính linh động của any thì đây không biết là tính năng tốt hay không nữa? Thử điểm qua cách dùng nhé:

Giống như các loại type khác trong 2 bài trước, chúng ta định nghĩa hoàn toàn tương tự:

let age: any = 25;

// Định nghĩa tuổi, nhưng hoàn toàn có thể gán text và array, object,...
age = "Học typescript";

// Gán mảng
age = ["Học typescript", 30, 50];

// Gán object
age = {name: "Thao", age: 22};

// có thể push bất kỳ đữ liệu nào
let mixed: Array<any> = [];
mixed.push(30);
mixed.push("30");
mixed.push(true);

// Gán bất kỳ loại thuộc tính nào
let person : {name: any, age: any};
person = {name: "Thao", age: 30}
person = { name: false, age: "30" };

Thông qua đoạn mẫu trên, các bạn đã có thể hình dùng về any type rồi đúng không. Sự linh động của any giúp bạn không bị gò bó kiểu dữ liệu nữa. Nhưng hãy nhớ rằng chúng ta dùng Typescript với mục đích chặt chẽ về mặt dữ liệu, nên trong thực tế hãy hạn chế sử dụng any và tốt nhất là không nên dùng. Any sẽ khiến bạn hình thành thói quen xấu khi không biết cách sử dụng.

Về Đặng Thắng

Chào mọi người, mình là Thắng. Sở thích của mình là lập trình và chia sẻ mọi thứ mình học được cho tất cả mọi người. Rất mong mọi người ủng hộ Blog của mình.

Đề xuất

Hướng dẫn TypeScipt #2: Biên dịch typescript (Compiling TypeScript)

Biên dịch typescript là quá trình biên dịch từ file “.ts” sang file “.js”. Vì …

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *