Dalam JavaScript, operator hapus digunakan untuk menghapus properti objek. Setelah menghapus properti sebenarnya, properti tersebut tidak dapat diakses dan mengembalikan undefined
Pemanggilan operator delete mengembalikan true ketika menghapus properti dan false sebaliknya. itu hanya efektif pada properti objek, tidak berpengaruh pada nama variabel atau fungsi
Operator hapus tidak boleh digunakan pada properti objek JavaScript yang telah ditentukan sebelumnya seperti objek window, Math, dan Date. Itu dapat merusak aplikasi Anda
Mari kita teliti beberapa fakta tentang operator delete
Hapus properti objek
Satu-satunya cara untuk sepenuhnya menghapus properti objek dalam JavaScript adalah dengan menggunakan operator delete
Jika properti yang ingin Anda hapus tidak ada, penghapusan tidak akan berpengaruh apa pun dan dapat mengembalikan nilai true
Bisakah kita menghapus variabel dalam Javascript?
Operator hapus menghapus properti dari objek. Itu tidak dapat menghapus variabel. Properti apa pun yang dideklarasikan dengan var_ tidak dapat dihapus dari lingkup global atau dari lingkup fungsi
Jika Anda mendeklarasikan variabel tanpa var, itu bisa dihapus. Mari kita lihat contoh di bawah ini
Variabel yang dideklarasikan tanpa kata kunci delete_0 secara internal menyimpannya sebagai properti dari objek delete1. Jadi kita bisa menghapus properti dari objek delete_1
Bisakah kita menghapus nilai dari array?
Karena larik JavaScript adalah objek, elemen dapat dihapus dengan menggunakan delete
delete akan menghapus properti objek, tetapi tidak akan mengindeks ulang array atau memperbarui panjangnya. Hal ini membuatnya tampak seolah-olah undefined
Menggunakan delete dapat meninggalkan lubang yang tidak terdefinisi dalam array. Gunakan delete_7, delete8, atau delete9 sebagai gantinya
Bisakah kita menghapus objek bawaan?
Menghapus objek bawaan seperti objek Math, Date, dan window tidak aman, dan dapat merusak seluruh aplikasi Anda
Menghapus properti yang tidak dapat dikonfigurasi
Properti objek, selain true_3, memiliki tiga atribut khusus
- true4 – jika true, nilainya dapat diubah, jika tidak, hanya dapat dibaca
- true6 – jika true, itu terdaftar dalam loop, jika tidak, tidak terdaftar
- true8 – jika true9, properti dapat dihapus atau atribut dapat dimodifikasi, jika tidak, properti tidak dapat diubah
Nilai yang ditetapkan dengan menggunakan false_0 dan diatur ke false1 dalam objek tidak dapat dihapus
Dalam mode ketat, ini akan menimbulkan kesalahan jika Anda mencoba menghapus properti yang tidak dapat dikonfigurasi
Kesimpulan
delete adalah satu-satunya cara yang benar untuk menghapus properti objek tanpa sisa, tetapi bekerja ~ 100 kali lebih lambat jika Anda menggunakan delete dalam loop
Solusi alternatif adalah menyetel nilai ke ufalse4didefinisikan seperti false5. Itu tidak sepenuhnya menghapus properti, itu hanya menetapkan nilainya menjadi tidak terdefinisi. pilihannya bukanlah solusi yang menonjol, tetapi jika Anda menggunakannya dengan hati-hati maka Anda dapat meningkatkan kinerjanya
Dalam tutorial JavaScript ini, saya akan menjelaskan apakah Anda dapat menghapus variabel atau tidak di JavaScript. Jika ya, lalu bagaimana Anda dapat menghapus variabel atau menghapus variabel JavaScript dengan mudah
Seseorang mengatakan itu menghapus seseorang mengatakan tidak disetel
Hapus adalah operator yang dengannya Anda dapat menghapus properti suatu objek. Tapi itu tidak bisa digunakan untuk menghapus variabel
Jadi jelas, Anda tidak dapat menghapus properti yang dibuat dengan var dengan menggunakan operator hapus. Tetapi Anda dapat menghapus properti (atau variabel apa pun yang Anda katakan) yang dibuat tanpa var
Game Tebak Angka Menggunakan JavaScript
Hapus Variabel JavaScript atau Hapus Variabel JavaScript
Lihat saja dua contoh yang akan saya berikan di bawah ini
<!DOCTYPE html> <html> <head> <title>Title goes here</title> </head> <body> <script type="text/javascript"> var some_variable= 23; delete some_variable; document.write(some_variable); </script> </body> </html>Keluaran
23_Galeri Foto/Gambar 3D (di luar angkasa) Menggunakan HTML5 CSS JS
Apa yang terjadi?
<script type="text/javascript"> var some_variable= 23; // used var here delete some_variable; // it will return false document.write(some_variable); // value of some_variable will be still here </script>Sekarang lihat contoh kedua. Kali ini kita akan membuat variabel tanpa var
<!DOCTYPE html> <html> <head> <title>Title goes here</title> </head> <body> <script type="text/javascript"> some_variable= 23; delete some_variable; document.write(some_variable); </script> </body> </html>Keluaran
Jadi, Anda akan mendapatkan output kosong. Karena sekarang properti some_variable hilang
(Di versi browser sebelumnya, ini dapat menunjukkan kepada Anda karena some_variable tidak ditentukan, tetapi sekarang tidak akan menampilkan kesalahan apa pun kepada Anda. Alih-alih kesalahan apa pun, itu tidak akan menunjukkan apa-apa)