SORU
17 Ocak 2013, PERŞEMBE


Javascript nesne yineleme

JavaScript bir nesne var:

{
    abc : '....',
    bca : '...',
    zzz : '...',
    xxx : '...',
    ccc : '...',
    .....
}

-Bir döngü özelliklerini elde etmek için kullanmak istiyorum. Ve parçalar aynı anda nesne özellikleri tüm () yineleme yapmak istiyorum.

Basit bir dizi ile döngü için bir standart ile yapabilirim:

for (i = 0; i < 100; i  ) { ... } // first part
for (i = 100; i < 300; i  ) { ... } // second
for (i = 300; i < arr.length; i  ) { ... } // last

Ama nasıl nesneleri ile bunu yapmak için?

CEVAP
17 Ocak 2013, PERŞEMBE


Çoğu nesneler için for .. in kullanın :

for (var key in yourobject) {
  console.log(key, yourobject[key]);
}

Kalıtsal özellikler günlüğü önlemek için, hasOwnProperty ile kontrol edin :

for (var key in yourobject) {
   if (yourobject.hasOwnProperty(key)) {
      console.log(key, yourobject[key]);
   }
}

This MDN documentation nesneler ve onların özellikleri ile başa çıkmak için nasıl daha genel olarak açıklar.

"Parçalar", en iyi dizi anahtarları için. bunu yapmak istiyorsan Sırası garanti değil, bu doğru yoldur. Modern tarayıcılarda kullanabilirsiniz

var keys = Object.keys(yourobject);

Daha uyumlu olması için, bunu yapmasaydın daha iyi olurdu :

 var keys = [];
 for (var key in yourobject) {      
     if (yourobject.hasOwnProperty(key)) keys.push(key);
 }

Sonra dizine göre özellikleri yineleme yapabilirsiniz: yourobject[keys[i]] :

for (var i=300; i<keys.length && i<600; i  ) { 
   console.log(keys[i], yourobject[keys[i]]);
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • majesticdubstep

    majesticdubs

    3 Kasım 2011
  • Marques Brownlee

    Marques Brow

    21 Mart 2008
  • TastyTuts | Creative video tutorials by Gareth David

    TastyTuts |

    6 Temmuz 2011