Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Mengulang Dengan Selamat Melalui Sifat Objek dalam JavaScript?

Bagaimanakah Saya Boleh Mengulang Dengan Selamat Melalui Sifat Objek dalam JavaScript?

Linda Hamilton
Lepaskan: 2025-01-03 05:58:46
asal
985 orang telah melayarinya

How Can I Safely Iterate Through Object Properties in JavaScript?

Memeriksa Sifat Objek: Mengulangi melalui Sifat

Dalam coretan kod yang diberikan, gelung for-in berulang pada sifat objek obj. Nama setiap sifat diberikan kepada propt pembolehubah dan nilainya diakses sebagai obj[propt].

Walau bagaimanapun, butiran penting yang perlu diambil perhatian ialah propt bukanlah kaedah atau sifat objek terbina dalam. Sebaliknya, ia hanyalah pembolehubah yang mengambil nama setiap sifat semasa lelaran gelung.

Kepentingan Pemeriksaan hasOwnProperty

Menyalurkan sifat objek menggunakan gelung untuk masuk memerlukan keselamatan tambahan semak: Object.prototype.hasOwnProperty.call(obj, prop).

Semakan ini perlu kerana objek dalam JavaScript mewarisi sifat daripada prototaip kelas asasnya. Oleh itu, objek mungkin memiliki sifat yang tidak ditakrifkan secara eksplisit, tetapi diwarisi daripada kelas asas.

Untuk mengelak daripada menyertakan sifat yang diwarisi dalam gelung, semakan hasOwnProperty menentukan sama ada harta tertentu dimiliki secara khusus kepada objek diulang dan bukan kepada prototaip yang diwarisi.

Alternatif hasOwnProperty Sintaks

Daripada menggunakan Object.prototype.hasOwnProperty.call(obj, prop), anda juga boleh menggunakan hasOwnProperty secara langsung pada objek itu sendiri:

if (obj.hasOwnProperty(prop)) {
    // Do stuff
}
Salin selepas log masuk

Walau bagaimanapun, pendekatan ini boleh membawa kepada ralat jika objek itu sendiri mempunyai harta bernama hasOwnProperty. Untuk mengelakkan ini, adalah disyorkan untuk menggunakan sintaks Object.prototype.hasOwnProperty.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengulang Dengan Selamat Melalui Sifat Objek dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan