Javascript bir nesne öğe sayısı
Bir yol (bir yerden) javascript bir nesne öğe sayısını almak için var mı?? (sürekli ve karmaşıklık gibi).
Ben bunu daha bilgi almak özellik veya yöntem bulmak. Şimdiye kadar sadece tüm koleksiyon boyunca yineleme yapmak isterdim ama bu doğrusal zaman.
Nesnenin boyutunu doğrudan erişim yok, sence de garip değil.
DÜZENLEME:
Object
nesne (nesneler genel olarak değil) bahsediyorum:
var obj = new Object ;
CEVAP
JS uygulamaları gibi bir değeri parça DAHİLİ olarak devam etmiş olsa da, onu elde etmek için standart bir yolu yok.
Geçmişte, Mozilla Javascript değişken non-standard __count__
ama sürüm 1.8.5 ile kaldırıldı maruz.
Cross-browser kodlama için açıkça özellikleri üzerinden yineleme ve hasOwnProperty()
kontrol kaldın:
function countProperties(obj) {
var count = 0;
for(var prop in obj) {
if(obj.hasOwnProperty(prop))
count;
}
return count;
}
5 yetenekli ECMA uygulamaları durumunda, bu da (Avi Flax Şeref) olarak yazılabilir
function countProperties(obj) {
return Object.keys(obj).length;
}
Ayrıca sayısız olmayan özellikleri (örneğin, bir dizi length
) kaçıracaksın unutmayın.
Kullanıyorsanız bir çerçeve gibi metro ajans, Prototip, Mootools, dolar ne olursa olsun-en-yutturmaca, kontrol gelirlerse kendi koleksiyonları API, hangi olabilir daha iyi bir çözüm için sorunu daha kullanarak yerel JS nesneleri.
Eğer anahtar kontrol JavaScript bir ne...
JQuery ile JavaScript nesne için form ...
JavaScript döngü nesne...
Nasıl verimli bir şekilde anahtarları/...
Nasıl bir nesne JavaScript özelliği ol...