2017-03-17 2 views
1

Je réussis à obtenir une intersection entre ligne et polygone et l'affiche sur la carte. J'avais déjà posté ce numéro here. Maintenant j'essaye d'afficher le résultat pour chaque ligne sur la console. Quand j'ai essayé d'écrire console.log(result[i]) j'ai obtenu undefined. Quelle est la bonne syntaxe que j'ai à faire, j'ai essayé plusieurs fois. Voici mon code actuel:Accède à chaque élément de l'objet en utilisant push Leaflet et turfjs

var lines = [line1, line2, line3, line4]; 
 
for (var i = 0; i < lines.length; i++) { 
 
    var intersection = []; 
 
    var result = []; 
 
    intersection = turf.intersect(lines[i], polygon1); 
 
    if (intersection) { 
 
    result.push(intersection); 
 
    L.geoJson(result, { 
 
     style: Style 
 
    }).addTo(map); 
 
    console.log(JSON.stringify(result[i])); 
 
    } else { 
 
    L.geoJson(lines[i]).addTo(map); 
 
    }

Répondre

1

result est défini dans votre boucle qui fonctionne sur lines ... alors pourquoi vous essayez d'utiliser la variable interne de cette boucle (destiné à lines) sur result, qui reçoit seulement l'entrée du gazon. Je pense que vous avez juste besoin console.log(result[0]), ce qui consignerait votre intersection. Deuxièmement, je ne vois pas l'avantage d'appeler JSON.stringify pour cela console.log.