2017-09-25 10 views
0

配列値の周りに一重引用符を使用しています。 は、私は私のように定義している配列があります。Javaスクリプト/ノードJSを使用して配列から一重引用符を削除します

var latLongArray=[]; 

を、私は取得しています値は以下の通りです:

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

私は単一引用符をしたくない、私はすべてのソリューションの上に使用してみましたが、私の問題のために働いていない。 私は単一引用符を削除するためのソリューションの下に使用してみました:

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

私は単一引用符を削除することができていますが、newLatLongArrayが、私は文字列として取得していますが、実際に、私は配列をしたいです。

一重引用符を削除して値を配列として取得するよう提案してください。

+0

だけのオブジェクトではない文字列を使用して配列を埋めます。 – dumitru

答えて

0

var newLatLongArray = latLongArray.join(',').replace(/'([^']+(?='))'/g, '$1');の行では、あなたの配列に参加するように指示します。一重引用符を置き換えますが、再度分割することはありません。

join()関数は配列を文字列に変換します。replaceは必要な文字を置き換え、文字列を与えます。末尾に.split( '、')を追加するだけです。

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

私はあなたを助けました!

0

私はあなたに緯度/経度のオブジェクトの配列が必要であるという仮定の下に行きます。その場合

、あなたが使用できます。

var data = latLongArray.map(item => { 
    item = item.replace('latitude', '"latitude"').replace('longitude', '"longitude"'); 
    return JSON.parse(item); 
})); 
関連する問題