Operator hapus dirancang untuk digunakan pada properti objek. Kata kunci ini tidak berpengaruh pada variabel atau fungsi
Operator hapus tidak dapat digunakan pada properti objek JavaScript yang telah ditentukan sebelumnya. Itu dapat merusak aplikasi Anda
Atribut Properti
Semua properti memiliki nama. Selain itu, mereka juga memiliki nilai
Nilai adalah salah satu atribut properti
Atribut lainnya adalah. dapat dihitung, dikonfigurasi, dan dapat ditulis
Atribut ini menentukan bagaimana properti dapat diakses [apakah dapat dibaca? apakah dapat ditulis?]
Dalam JavaScript, semua atribut dapat dibaca, tetapi hanya atribut nilai yang dapat diubah [dan hanya jika properti dapat ditulis]
[ECMAScript 5 memiliki metode untuk mendapatkan dan mengatur semua atribut properti]
Properti Prototipe
Objek JavaScript mewarisi properti prototipe mereka
Kata kunci delete tidak menghapus properti yang diwariskan, tetapi jika Anda menghapus properti prototipe, ini akan memengaruhi semua objek yang diwarisi dari prototipe
Gunakan Object.keys
untuk mendapatkan array
yang berisi semua kunci pada objek, lalu hitung panjang array
dan bandingkan dengan Nol [0], jika sama maka objek kosong, perhatikan contoh berikut
let obj = {};
function isEmpty[obj] {
return Object.keys[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
Cara Object.values
hampir sama dengan Object.keys
hanya saja yang dicentang adalah nilai di dalam array
let obj = {};
function isEmpty[obj] {
return Object.values[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
_Mengulang objek dengan let obj = {};
function isEmpty[obj] {
return Object.values[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
_3
let obj = {};
function isEmpty[obj] {
return Object.values[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
Gunakan
let obj = {};
function isEmpty[obj] {
return Object.values[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
_3 perulangan untuk mengulangi let obj = {};
function isEmpty[obj] {
return Object.values[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
5 di atas objeklet obj = {};
function isEmpty[obj] {
for [let prop in obj] {
if [obj.hasOwnProperty[prop]] return false;
}
return true;
}
console.log[isEmpty[obj]];
// true
Pada kode di atas, kita akan melakukan iterasi melalui properti objek dan jika objek memiliki setidaknya satu properti, maka objek tersebut akan memasuki loop dan mengembalikan
let obj = {};
function isEmpty[obj] {
return Object.values[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
6. Jika objek tidak memiliki properti apapun maka akan mengembalikan let obj = {};
function isEmpty[obj] {
return Object.values[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
7Menggunakan let obj = {};
function isEmpty[obj] {
return Object.values[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
_8
let obj = {};
function isEmpty[obj] {
return Object.values[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
Bentuk benda kosong adalah sebagai berikut
let obj = {};
function isEmpty[obj] {
return Object.values[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
9. Jika kita melakukan let obj = {};
function isEmpty[obj] {
return Object.values[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
8 pada objek kosong maka kita akan mencari nilai kurung buka dan tutup, berdasarkan itu kita dapat membandingkannya dengan kurung buka dan tutup dalam bentuk string. Lebih jelas lihat contoh berikutlet obj = {};
function isEmptyObject[obj] {
return JSON.stringify[obj] === "{}";
}
console.log[isEmptyObject[obj]];
// true
Menggunakan JQuery
jQuery.isEmptyObject[obj];
Menggunakan Lodash
_.isEmpty[obj];
Berdasarkan cara-cara di atas, kalau asrul dev sendiri lebih suka pakai
let obj = {};
function isEmpty[obj] {
return Object.values[obj].length === 0;
}
console.log[isEmpty[obj]];
// true
8, kalau temannya lebih suka yang mana?