Pengenalan kepada enkapsulasi objek Primitif dalam kemahiran JavaScript_javascript

WBOY
Lepaskan: 2016-05-16 16:23:00
asal
1166 orang telah melayarinya

Dalam JavaScript, rentetan, nombor dan boolean adalah semua jenis primitif, iaitu rentetan, nombor dan nilai Boolean tidak wujud dalam bentuk objek. Walau bagaimanapun, memandangkan ketiga-tiga jenis nilai primitif ini perlu dikendalikan, JavaScript akan secara automatik merangkum ketiga-tiga jenis nilai ini dan menjadikannya sebagai objek dengan sifat dan kaedah. Mengambil rentetan sebagai contoh, proses enkapsulasi ini adalah seperti berikut:

1. Apabila JavaScript menemui akses atribut atau kaedah seruan nilai rentetan, ia akan memanggil Rentetan baharu (nilai rentetan) untuk merangkum rentetan secara automatik ke dalam objek Rentetan.
2. JavaScript akan mengakses sifat atau kaedah objek yang baru dibuat ini dan mengembalikan hasil yang sepadan.
3. Selepas akses atribut atau panggilan kaedah selesai, JavaScript akan segera memusnahkan objek yang baru dibuat.

Mengambil kod berikut sebagai contoh, tidak masuk akal untuk menulis sifat pada objek String yang dicipta secara automatik oleh JavaScript, kerana objek yang dicipta tidak lagi wujud selepas pernyataan penulisan tamat:


Salin kod Kod adalah seperti berikut:

var s = "ujian";
s.panjang = 9;
console.log(s.length);//still 4
s.newVariable = 9;
console.log(s.newVariable);//undefined
console.log(s === "ujian");//true

Perlu diambil perhatian bahawa pembolehubah s dalam kod di atas sentiasa mewakili rentetan primitif Objek rentetan yang dicipta secara automatik oleh JavaScript wujud dalam proses melaksanakan operasi s.length atau s.newVariable. Ini boleh disahkan daripada baris terakhir kod dalam percubaan di atas.

Selain merangkum nilai Primitif secara automatik, pembangun juga boleh memilih untuk melaksanakan proses yang sepadan secara manual. Tidak seperti pengkapsulan automatik, objek yang diperoleh melalui pengkapsulan manual tidak akan dimusnahkan serta-merta, jadi operasi penulisan sifat yang diambil untuk objek yang dikapsul secara manual adalah bermakna:


Salin kod Kod adalah seperti berikut:

var t = new String("test");
t.panjang = 9;
console.log(t.length);//still 4, kerana atribut length dibaca sahaja
t.newVariable = 9;
console.log(t.newVariable);//9

console.log(t == "test");//true
console.log(t === "ujian");//false

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan