Rumah > Artikel > hujung hadapan web > Bagaimana untuk Mencapai Semakan Jenis Masa Jalan untuk Antara Muka dalam TypeScript?
Semak Jenis Antara Muka dalam TypeScript
Dalam TypeScript, antara muka mentakrifkan kontrak yang boleh diikuti oleh objek, tetapi mereka tidak menguatkuasakan pelaksanaannya pada masa jalan . Ini bermakna menggunakan instanceof untuk menyemak sama ada pembolehubah melaksanakan antara muka akan gagal.
Untuk mencapai pemeriksaan jenis masa jalan untuk antara muka, anda boleh menggunakan pengawal jenis tersuai. Ini ialah fungsi yang mengambil objek sebagai hujah dan mengembalikan boolean yang menunjukkan sama ada ia melaksanakan antara muka yang diingini:
interface A { member: string; } function instanceOfA(object: any): object is A { return 'member' in object; } var a: any = { member: "foobar" }; if (instanceOfA(a)) { alert(a.member); }
Untuk antara muka dengan bilangan ahli yang ramai, anda boleh menambah sifat diskriminator:
interface A { discriminator: 'I-AM-A'; member: string; } function instanceOfA(object: any): object is A { return object.discriminator === 'I-AM-A'; } var a: any = { discriminator: 'I-AM-A', member: "foobar" }; if (instanceOfA(a)) { alert(a.member); }
Ini membolehkan pemeriksaan jenis yang cekap tanpa perlu menyemak semua ahli secara individu.
Atas ialah kandungan terperinci Bagaimana untuk Mencapai Semakan Jenis Masa Jalan untuk Antara Muka dalam TypeScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!