2017-09-25 9 views
0

J'ai un problème de guillemets simples autour de la valeur du tableau. J'ai un tableau que j'ai définir comme:Supprimer des guillemets simples d'un tableau à l'aide d'un script Java/Noeud JS

var latLongArray=[]; 

et la valeur que je reçois est comme ci-dessous:

['{latitude:43.73747, longitude:7.163546}', 
    '{latitude:50.127339, longitude:8.60512}', 
    '{latitude:30.267, longitude:-97.743}' ] 

Je ne veux pas de guillemets, j'essayé d'utiliser surtout solution, mais ne travaille pas pour mon problème. Je essayé d'utiliser des solutions ci-dessous pour éliminer les guillemets simples:

var newLatLongArray = latLongArray.join(',').replace(/'([^']+(?='))'/g, '$1'); 
// Remove single quotes 

Je suis en mesure de supprimer les guillemets simples mais le newLatLongArray que je reçois en tant que chaîne, mais en fait je veux un tableau.

Toute suggestion pour obtenir la valeur sous forme de tableau en supprimant des guillemets simples, s'il vous plaît.

+0

Il suffit de remplir votre tableau avec des objets et non des chaînes. – dumitru

Répondre

0

Sur votre ligne var newLatLongArray = latLongArray.join(',').replace(/'([^']+(?='))'/g, '$1');, vous indiquez de joindre votre tableau, remplacez les guillemets simples mais vous ne scindez plus jamais.

La fonction join() va transformer votre tableau en une chaîne, la remplacer remplacera les caractères recherchés et donner une chaîne si vous avez juste besoin d'ajouter un .split (« ») à la fin comme ceci:

var newLatLongArray = latLongArray.join(',').replace(/'([^']+(?='))'/g, '$1').split(','); 

J'espère que je vous ai aidé!

0

Je vais partir de l'hypothèse que vous voulez un tableau d'objets lat/long.

Dans ce cas, vous pouvez utiliser:

var data = latLongArray.map(item => { 
    item = item.replace('latitude', '"latitude"').replace('longitude', '"longitude"'); 
    return JSON.parse(item); 
}));