Kiểu dữ liệu chỉ mục cho mảng trong TypeScript
Trong TypeScript, bạn có thể tạo các interface, sẽ xác định kiểu dữ liệu cho cặp khóa-giá trị trong mảng và đối tượng. Kiểu dữ liệu đó được gọi là kiểu chỉ mục (indexable type).
Hãy xem xét trong thực tế. Hãy tạo một
interface IArray, interface này sẽ
xác định cặp khóa-phần tử cho một mảng.
Hãy chỉ định rằng khóa của mảng sẽ là số
(ở đây chúng ta không có lựa chọn nào khác), và
giá trị là chuỗi:
interface IArray {
[index: number]: string;
}
Bây giờ hãy khai báo một biến arr với
kiểu chỉ mục của chúng ta:
let arr: IArray;
Hãy gán giá trị cho biến của chúng ta dưới dạng một mảng chuỗi:
let arr: IArray = ['a', 'b', 'c'];
Bây giờ, nếu tạo các phần tử mảng là số, TypeScript sẽ báo lỗi:
let arr: IArray = [1, 2, 3]; // lỗi
Tạo một interface, mô tả một mảng với các giá trị là số.