Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Mendapatkan Senarai Nama Harta Objek JavaScript dengan Cekap?

Bagaimanakah Saya Boleh Mendapatkan Senarai Nama Harta Objek JavaScript dengan Cekap?

Linda Hamilton
Lepaskan: 2024-12-05 12:09:14
asal
436 orang telah melayarinya

How Can I Efficiently Get a List of JavaScript Object Property Names?

Penyenaraian Sifat Objek JavaScript

Apabila bekerja dengan objek JavaScript, mendapatkan semula senarai nama sifat mungkin penting. Katakan anda mempunyai objek yang ditakrifkan seperti berikut:

var myObject = {"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"};
Salin selepas log masuk

Timbul persoalan: bagaimana kita boleh mendapatkan senarai nama harta dengan cekap (cth., ["ircEvent", "method", "regex"]) ?

Pelayar Moden:

Dalam pelayar moden, terbina dalam Kaedah Object.keys menyediakan penyelesaian yang elegan:

var keys = Object.keys(myObject);
Salin selepas log masuk

Polyfill untuk Pelayar Warisan:

Untuk penyemak imbas yang tidak mempunyai sokongan asli, polyfill yang dipermudahkan boleh dilaksanakan:

var getKeys = function(obj) {
   var keys = [];
   for (var key in obj) {
      keys.push(key);
   }
   return keys;
};
Salin selepas log masuk

Pendekatan alternatif melibatkan memperluaskan Objek prototaip:

Object.prototype.keys = function() {
   var keys = [];
   for (var key in this) {
      keys.push(key);
   }
   return keys;
};
Salin selepas log masuk

Kaedah ini membolehkan anda memanggil .keys() pada sebarang objek. Walau bagaimanapun, memanjangkan prototaip mungkin mempunyai kesan sampingan dan biasanya tidak disyorkan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mendapatkan Senarai Nama Harta Objek JavaScript dengan Cekap?. 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