[英]How to split array to a format as given using javascript?
我的數據是
["9.968034,77.906814", "8.699679,77.478347", "8.797406,80.895095"]
如何將其拆分為
[
{ lat: 9.968034, lng: 77.906814},
{ lat: 8.699679, lng: 77.478347},
{ lat: 8.797406, lng: 80.895095}
];
請幫我解決問題...
我嘗試了
var jArray = ["9.968034,77.906814", "8.699679,77.478347", "8.797406,80.895095"]; var temp = {}; for(var j=0; j<jArray.length;j++){ var tr = { 'lat' :jArray[j][1], 'lng' :jArray[j][0] } temp.push(tr); } console.log(temp)
你可以試試看
借助map()
和split()
函數。
let arr = ["9.968034,77.906814", "8.699679,77.478347", "8.797406,80.895095"] let op = arr.map(e => { let temp = e.split(','); return { lat:temp[0], lng: temp[1] }; }) console.log(op);
您可以拆分一個解構數組。
var data = ["9.968034,77.906814", "8.699679,77.478347", "8.797406,80.895095"], result = data.map(s => (([lat, lng]) => ({ lat, lng })) (s.split(',')) ); console.log(result);
Javascript具有針對字符串的內置JSON解析,我想這就是您擁有的:
var myObject = JSON.parse("my json string");
在您的示例中使用此代碼將是:
var jsonData = JSON.parse(myMessage);
for (var i = 0; i < jsonData.counters.length; i++) {
var counter = jsonData.counters[i];
console.log(counter.counter_name);
}
嘗試一下,希望對您有所幫助。
這將為您做到。
var arrayOfStrings = ["9.968034,77.906814", "8.699679,77.478347", "8.797406,80.895095"];
var arrayOfObjects = [];
for(var item = 0; item < arrayOfString.length; item++){
var latlng = {};
var splittedValues = arrayOfString[item].split(",");
latlng["lat"] = splittedValues[0];
latlng["long"] = splittedValues[1]
arrayOfObjects.push(latlng);
}
console.log(arrayOfObjects);
您的循環是正確的,但是您應該使用.split()
分隔符使用分隔符分割字符串,
以獲取字符串的一部分。
var jArray = ["9.968034,77.906814", "8.699679,77.478347", "8.797406,80.895095"]; var temp = []; for (var j=0; j<jArray.length;j++){ temp.push({ 'lat': jArray[j].split(',')[0], 'lng': jArray[j].split(',')[1] }); } console.log(temp);
你也可以用foreach
代替
var temp = [];
jArray.forEach(function(item){
temp.push({
'lat' :item.split(',')[0],
'lng' :item.split(',')[1]
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.