SORU
3 NİSAN 2011, Pazar


Nasıl nesne uzunluğu elde etmek için

Bir nesnenin uzunluğunu veren herhangi bir dahili işlevi var mı?

Örneğin, 3 dönmelidir a = { 'a':1,'b':2,'c':3 } var. a.length kullanırsam tanımlanmamış döndürür.

Basit bir döngü işlevi olabilir, ama eğer bir yerleşik işlevi ise orada olduğunu bilmek istiyorum?

Teşekkür ederim.

P. S. ı ile ilgili bir soru (Length of a JSON object) - kullanıcı benim için çok rahat olmayan bir diziye dönüştürülecek nesneyi danışmanlık seçilen yanıt buldu.

CEVAP
3 NİSAN 2011, Pazar


Tarayıcılar Object.keys() desteklemek için basitçe yapabilirsiniz:

Object.keys(a).length;

(Özellikle IE < 9) aksi halde, sen-ebilmek nesne döngü for (x in y) bir döngü ile kendinize sorun:

var count = 0;
var i;

for (i in a) {
    if (a.hasOwnProperty(i)) {
        count  ;
    }
}

hasOwnProperty Tek nesne değişmez, ve özellikleri "miras" prototipi. özelliklerini saymaya olduğundan emin olmak için var.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Julian Smith

    Julian Smith

    31 EKİM 2006
  • Mark Brown

    Mark Brown

    9 HAZİRAN 2010
  • Rooster Teeth

    Rooster Teet

    11 Temmuz 2006