2017-08-23 2 views
0

Je reçois un JSON de l'API Face Detection de Microsoft Recognition Services et affiche les résultats. J'ai déjà créé plusieurs résultats et c'est le seul qui soit quadruple le pliable.Foreach Duplication des résultats?

La taille de l'objet JSON est 9, de 0 à 8. Il crée plus de 50 objets, 5 pour chaque personne.

La bonne chose est de créer un pliable pour chaque personne, ce qui donnera 9 résultats.

Lengthduplicate

CODE:

function GenerateAttributes__(objJSON){ 
    var count = 0; 
    for(obj in objJSON){ 
    for(hair in objJSON[obj].faceAttributes.hair.hairColor){ 
     document.getElementById('face-attributes-information').innerHTML += 

     '<ul class="collapsible" data-collapsible="accordion">' + 
     '<li>' + 
      '<div class="collapsible-header"><i class="fa fa-id-card-o" aria-hidden="true"></i><strong>People (2)</strong></div>' + 

      '<div class="collapsible-body white">' + 
      '<ul class="collection">' + 
       '<li class="collection-item avatar">' + 
       '<img class="responsive-img circle pink" src="img/neoris-icons/moustache.png">' + 
       '<span class="title title-collection-content-information">Facial Appearance</span>' + 
       '<p><strong>Moustache</strong></p>' + 
       '<a href="#!" class="secondary-content">' + 
        '<span class="new black badge" data-badge-caption=" "><strong>1.0 %</strong></span>' + 
        '<span class="new black badge" data-badge-caption=" "><strong>Confidence </strong></span>' + 
       '</a>' + 
       '</li>' + 

       '<li class="collection-item avatar">' + 
       '<i class="fa fa-question-circle circle red" aria-hidden="true"></i>' + 
       '<img class="responsive-img circle pink" src="img/neoris-icons/beard.png">' + 
       '<p><strong>Beard</strong></p>' + 
       '<a href="#!" class="secondary-content">' + 
        '<span class="new black badge" data-badge-caption=" "><strong>1.0 %</strong></span>' + 
        '<span class="new black badge" data-badge-caption=" "><strong>Confidence </strong></span>' + 
       '</a>' + 
       '</li>' + 

       '<li class="collection-item avatar">' + 
       '<img class="responsive-img circle pink" src="img/neoris-icons/sideburns.png">' + 
       '<span class="title title-collection-content-information">Facial Appearance</span>' + 
       '<p><strong>Sideburns</strong></p>' + 
       '<a href="#!" class="secondary-content">' + 
        '<span class="new black badge" data-badge-caption=" "><strong>1.0 %</strong></span>' + 
        '<span class="new black badge" data-badge-caption=" "><strong>Confidence </strong></span>' + 
       '</a>' + 
       '</li>' + 
      '</ul>' + 
      '</div>' + 

      '<div class="collapsible-body white">' + 
      '<ul class="collection">' + 
       '<li class="collection-item avatar">' + 
       '<img class="responsive-img circle brown" src="img/neoris-icons/female-hair.png">' + 
       '<span class="title title-collection-content-information">Hair Color</span>' + 
       '<p><strong class="brown-text">Brown</strong></p>' + 
       '<a href="#!" class="secondary-content">' + 
        '<span class="new brown badge" data-badge-caption=" "><strong>1.0 %</strong></span>' + 
        '<span class="new brown badge" data-badge-caption=" "><strong>Confidence </strong></span>' + 
       '</a>' + 
       '</li>' + 

       '<li class="collection-item avatar">' + 
       '<img class="responsive-img circle yellow accent-4" src="img/neoris-icons/female-hair.png">' + 
       '<span class="title title-collection-content-information">Hair Color</span>' + 
       '<p><strong class="yellow-text">Blond</strong></p>' + 
       '<a href="#!" class="secondary-content">' + 
        '<span class="new yellow accent-4 badge" data-badge-caption=" "><strong>1.0 %</strong></span>' + 
        '<span class="new yellow accent-4 badge" data-badge-caption=" "><strong>Confidence </strong></span>' + 
       '</a>' + 
       '</li>' + 

       '<li class="collection-item avatar">' + 
       '<img class="responsive-img circle black" src="img/neoris-icons/female-hair.png">' + 
       '<span class="title title-collection-content-information">Hair Color</span>' + 
       '<p><strong class="black-text">Black</strong></p>' + 
       '<a href="#!" class="secondary-content">' + 
        '<span class="new black badge" data-badge-caption=" "><strong>1.0 %</strong></span>' + 
        '<span class="new black badge" data-badge-caption=" "><strong>Confidence </strong></span>' + 
       '</a>' + 
       '</li>' + 

       '<li class="collection-item avatar">' + 
       '<img class="responsive-img circle teal" src="img/neoris-icons/female-hair.png">' + 
       '<span class="title title-collection-content-information">Hair Color</span>' + 
       '<p><strong class="teal-text">Other</strong></p>' + 
       '<a href="#!" class="secondary-content">' + 
        '<span class="new badge" data-badge-caption=" "><strong>1.0 %</strong></span>' + 
        '<span class="new badge" data-badge-caption=" "><strong>Confidence </strong></span>' + 
       '</a>' + 
       '</li>' + 

       '<li class="collection-item avatar">' + 
       '<img class="responsive-img circle grey" src="img/neoris-icons/female-hair.png">' + 
       '<span class="title title-collection-content-information">Hair Color</span>' + 
       '<p><strong class="grey-text">Gray</strong></p>' + 
       '<a href="#!" class="secondary-content">' + 
        '<span class="new grey badge" data-badge-caption=" "><strong>1.0 %</strong></span>' + 
        '<span class="new grey badge" data-badge-caption=" "><strong>Confidence </strong></span>' + 
       '</a>' + 
       '</li>' + 

       '<li class="collection-item avatar">' + 
       '<img class="responsive-img circle red" src="img/neoris-icons/female-hair.png">' + 
       '<span class="title title-collection-content-information">Hair Color</span>' + 
       '<p><strong class="red-text">Red</strong></p>' + 
       '<a href="#!" class="secondary-content">' + 
        '<span class="new red badge" data-badge-caption=" "><strong>1.0 %</strong></span>' + 
        '<span class="new red badge" data-badge-caption=" "><strong>Confidence </strong></span>' + 
       '</a>' + 
       '</li>' + 

      '</ul>' + 
      '</div>' + 

     '</li>' + 
     '</ul>'; 

     console.log("COUNT OBJ: ", count++); 
    } 
    } 
} 
+1

À quoi ressemble un 'objJSON [obj] .faceAttributes.hair.hairColor'? Sans voir toute la structure JSON, cette question est difficile à répondre. De même, vous ne devriez pas utiliser 'for..in' pour itérer sur un tableau ou un objet. Il est beaucoup plus sûr de suivre une stratégie différente: https://stackoverflow.com/questions/500504/why-is-using-for-in-with-array-iteration-a-bad-idea –

+0

semble être pour() pour () compte ++ donc 5 * nombre de hairccolor? –

Répondre

0

Vous interagissez une boucle dans un autre, il agit 1 * (n), 2 * (n), 3 * (n). Passez en revue votre logique