Rumah  >  Artikel  >  hujung hadapan web  >  Pengenalan kepada kaedah pemadaman harta objek dalam kemahiran JavaScript_javascript

Pengenalan kepada kaedah pemadaman harta objek dalam kemahiran JavaScript_javascript

WBOY
WBOYasal
2016-05-16 16:23:121244semak imbas

Dalam JavaScript, anda boleh menggunakan operator padam untuk memadamkan harta dalam objek:


Salin kod Kod adalah seperti berikut:

var t = {a:42, b:26};
console.log(t);//Objek {a=42, b=26}
padamkan t.a;
console.log(t);//Objek {b=26}


Had operasi pemadaman sifat ini ialah pengendali padam hanya boleh memadam semua sifat objek itu sendiri dan tidak boleh memadam sifat yang diwarisi daripada objek prototaip. Jika anda ingin memadamkan harta dalam objek prototaip, anda mesti mendapatkan objek prototaip secara eksplisit dan kemudian melaksanakan operasi dalam objek prototaip:


Salin kod Kod adalah seperti berikut:

var o = {x:1, y:2};
var a = Object.create(o);
a.z = 3;
console.log(a);//Objek {z=3, x=1, y=2}
padam a.x;//TIDAK boleh memadam harta warisan
console.log(a);//Objek {z=3, x=1, y=2}
delete a.z;//Boleh padam harta sendiri
console.log(a);//Objek {x=1, y=2}
padamkan a.__proto__.x;
console.log(a);//Objek {y=2}


Jika harta dalam objek prototaip dipadamkan, semua objek yang mewarisi objek prototaip akan terjejas.

Untuk nilai pulangan operasi padam, JavaScript mengikut peraturan berikut:

1 Jika operasi pemadaman berjaya, kembalikan benar.
2. Jika operasi padam tidak mempunyai kesan (contohnya, harta yang akan dipadamkan tidak wujud), ia juga akan kembali benar.
3. Jika anda ingin memadamkan harta yang atribut boleh dikonfigurasikannya palsu, ralat TypeError akan dilaporkan dalam mod ketat dan palsu akan dikembalikan dalam mod tidak ketat.
Jika pengendali padam bertindak pada harta objek global, maka dalam mod tidak ketat, objek global dalam kod boleh ditinggalkan:

Salin kod Kod adalah seperti berikut:

ini.c = 42;
padam c;//sama dengan memadam ini.c;

Perlu diingatkan bahawa dalam mod ketat, kaedah penulisan di atas akan membuang SyntaxError.

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