Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Menentukan Secara Berkesan sama ada Objek JavaScript Kosong?
Menentukan Kekosongan Objek JavaScript
Untuk memastikan sama ada objek JavaScript kosong, pelbagai kaedah dan pertimbangan tersedia. Satu pendekatan melibatkan penggunaan gelung for...in bersama-sama dengan Object.hasOwn (ECMA 2022 ). Gelung ini berulang melalui sifat objek sendiri dan mengembalikan palsu jika wujud:
function isEmpty(obj) { for (const prop in obj) { if (Object.hasOwn(obj, prop)) { return false; } } return true; }
Kaedah lain membezakan objek kosong tussen dan objek lain yang tidak mempunyai sifat sendiri. Ini boleh dicapai melalui semakan jenis:
function isEmptyObject(value) { if (value == null) { return false; } if (typeof value !== 'object') { return false; } const proto = Object.getPrototypeOf(value); if (proto !== null && proto !== Object.prototype) { return false; } return isEmpty(value); }
Adalah penting untuk ambil perhatian bahawa membandingkan dengan Object.prototype mungkin terlepas pandang objek merentas alam. Selain itu, Object.keys(obj).length tidak digalakkan kerana ia tidak cekap, memerlukan penciptaan tatasusunan.
Untuk keserasian dengan enjin JavaScript yang lebih lama, Object.hasOwn boleh digantikan dengan Object.prototype.hasOwnProperty.call :
function isEmpty(obj) { for (var prop in obj) { if (Object.prototype.hasOwnProperty.call(obj, prop)) { return false; } } return true; }
Pelbagai perpustakaan menawarkan fungsi yang direka khusus untuk menyemak objek kosong:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menentukan Secara Berkesan sama ada Objek JavaScript Kosong?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!