Rumah  >  Artikel  >  hujung hadapan web  >  Perbezaan Antara &#Objek&#, &#{}&#, dan 'objek' dalam TypeScript

Perbezaan Antara &#Objek&#, &#{}&#, dan 'objek' dalam TypeScript

王林
王林asal
2024-07-24 15:52:301143semak imbas

Dalam TypeScript, apabila kita ingin mentakrifkan jenis objek, terdapat beberapa pilihan ringkas seperti 'Objek', '{}' dan 'objek'. Apakah perbezaan antara mereka?

Objek (huruf besar)

Objek (huruf besar) menerangkan sifat yang biasa kepada semua objek JavaScipt. Ia ditakrifkan dalam fail lib.es5.d.ts yang disertakan dengan perpustakaan TypeScript.

The Differences Between

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.

The Differences Between

{}

{} menerangkan objek yang tidak mempunyai ahli sendiri, yang bermaksud TypeScript akan mengadu jika anda cuba mengakses ahli hartanya:

The Differences Between

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)

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.

The Differences Between

Snek: Rekod

Dalam kod sumber banyak perpustakaan biasa, kami mungkin melihat Rekod untuk mewakili jenis bukan primitif. Ia mempunyai kesan yang sama seperti objek (huruf kecil), tetapi ia lebih semantik.


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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Pengenalan kepada TypeScriptArtikel seterusnya:Pengenalan kepada TypeScript