Bir Nesneyi bulmak için nasıl bir WordPress kullanmak bir Dizi özniteliği
Bir dizi var verilen "amaç" nesneler:
//array of purpose objects:
var purposeObjects = [
{purpose: "daily"},
{purpose: "weekly"},
{purpose: "monthly"}
];
(sadelik için diğer özellikleri ihmal ediyorum)
Şimdi Eğer amaç eşleşen bir ad bulunursa, nesneleri belirli bir döndüren bir yöntem vermek istiyorum.
Bu çalışmıyor:
function findPurpose(purposeName){
return $.grep(purposeObjects, function(){
return this.purpose == purposeName;
});
};
findPurpose("daily");
ama aslında boş bir dizi döndürür:
[]
JQuery 1.5.2 kullanıyorum. Ayrıca ile denedim $.() her ama hiç şansım yoktu.
Görünüşe göre, en JQuery yöntemleri DOM elemanları ile kullanım için tasarlanmıştır (filter()
. gibi
Bunu başarmak için nasıl bir fikir?
CEVAP
(Ve hatta jQuery olmadan çalışır) en hızlı yol:
var findPurpose = function(purposeName) {
for (var i = 0, len = purposeObjects.length; i < len; i ) {
if (purposeObjects[i].purpose === purposeName)
return purposeObjects[i]; // Return as soon as the object is found
}
return null; // The object was not found
}
Not
jQuery $.grep (veya başka bir filtre işlevi) en iyi çözüm değil.
$.grep
işlevi üzerinden döngütümeğer nesne ise bile, dizinin zaten döngü sırasında bulundu. Bir WordPress kullanmak belgelere grep :
$.() grep yöntem gerekli bir dizi öğeleri böylece kaldırır geri kalan tüm öğeleri verilen bir testi geçmek. Test işlevi olduğunu dizi bir öğe geçirilir ve içinde dizi öğesinin dizinini. Eğer test sonucu madde dizisi olacak true değerini döndürür.
bir öğe veri-öznitelik değeri için bir...
eğer bulmak için nasıl bir WordPress k...
bir WordPress kullanmak: ilk görünen g...
Nasıl bir WordPress kullanmak bilinen ...
Nasıl bir WordPress kullanmak dizi düz...