Dalam TypeScript, apabila kita ingin mentakrifkan jenis objek, terdapat beberapa pilihan ringkas seperti 'Objek', '{}' dan 'objek'. Apakah perbezaan antara mereka?
Objek (huruf besar) menerangkan sifat yang biasa kepada semua objek JavaScipt. Ia ditakrifkan dalam fail lib.es5.d.ts yang disertakan dengan perpustakaan TypeScript.
Seperti yang anda boleh lihat, ia termasuk beberapa sifat biasa seperti toString(), valueOf(), dan sebagainya.
Kerana ia hanya menekankan sifat yang biasa kepada objek JavaScript. Jadi anda boleh menetapkan objek boleh kotak seperti rentetan, boolean, nombor, bigint, simbol kepadanya, tetapi bukan sebaliknya.
{} menerangkan objek yang tidak mempunyai ahli sendiri, yang bermaksud TypeScript akan mengadu jika anda cuba mengakses ahli hartanya:
Daripada contoh kod di atas, kita dapat melihat bahawa {} dan Object (huruf besar) mempunyai ciri yang sama. Iaitu, ia hanya boleh mengakses sifat yang biasa (walaupun logik kod JavaScript adalah betul), semua objek boleh kotak boleh diberikan kepadanya, dsb.
Ini kerana jenis {} boleh mengakses sifat biasa tersebut melalui rantaian prototaip, dan ia juga tidak mempunyai sifat sendiri. Jadi ia berkelakuan sama seperti jenis Objek (huruf besar). Tetapi ia mewakili konsep yang berbeza.
objek (huruf kecil) bermaksud sebarang jenis bukan primitif, yang dinyatakan dalam kod seperti ini:
type PrimitiveType = | undefined | null | string | number | boolean | bigint | symbol; type NonPrimitiveType = object;
Ini bermakna semua jenis bukan primitif tidak boleh diserahkan kepadanya, dan begitu juga sebaliknya.
Dalam kod sumber banyak perpustakaan biasa, kami mungkin melihat Rekod
Jika anda mendapati kandungan saya membantu, sila pertimbangkan untuk melanggan. Saya menghantar _ surat berita mingguan setiap Ahad _ dengan kemas kini pembangunan web terkini. Terima kasih atas sokongan anda!
Atas ialah kandungan terperinci Perbezaan Antara Objek, {}, dan 'objek' dalam TypeScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!