将字符串转换为数组并在javascript中提供数组结果标题
我正在将字符串转换为数组,但我需要为得到的结果添加标题。请帮助:将字符串转换为数组并在javascript中提供数组结果标题,javascript,arrays,Javascript,Arrays,我正在将字符串转换为数组,但我需要为得到的结果添加标题。请帮助: // Get all coordinates from interface and pass it to an array var latidudes_from_db = Array.from(document.querySelectorAll(".a"), input => input.value); var longitudes_from_db = Array.from(document.querySelectorAll
// Get all coordinates from interface and pass it to an array
var latidudes_from_db = Array.from(document.querySelectorAll(".a"), input => input.value);
var longitudes_from_db = Array.from(document.querySelectorAll(".b"), input => input.value);
strings = latidudes_from_db.map((lat, i) => [lat,
longitudes_from_db[i]].join());
var markers = JSON.parse("[" + strings + "]");
console.log(markers);
我得到的输出:
0:-1.951
1:30.095
2:-1.942
3:30.095
我希望获得的产出:
[
{
"latitude": '0:-1.951',
"longitude": '1:30.095'
},
{
"latitude": '2:-1.942',
"longitude": '3:30.095'
}
]
//从接口获取所有坐标并将其传递给数组
var latidudes_from_db=['1','2']
var经度(自)db=['3','4']
var markers=latidudes_from_db.map((纬度,i)=>{
返回{
纬度:纬度,
经度:从经度到经度[i]
};
});
控制台日志(标记)代码>Hmmm如果您想从数组中创建它,我想我们可以使用map()
函数并对其使用条件
下面是我为您制作的示例代码
var标记=[
"0:-1.951",
"1:30.095",
"2:-1.942",
"3:30.095"
];
var newArr=[];
var obj={};
markers.map(函数(marker,index){
如果(索引%2==0){
对象纬度=标记
}否则{
obj.经度=标记
}
if(Object.keys(obj.length==2){
新推力(obj);
obj={}
}
})
console.log(newArr)
您可以在从\u db映射纬度时构造对象:
var纬度从_db=[-1.951,-1.942];
var经度从_-db=[30.095,30.095];
console.log(
来自地图的纬度((纬度,i)=>({
纬度:纬度,
经度:从经度到经度[i]
}))
);
markers变量是一个对象还是一个数组?你能把latidudes\u from\u db
的样子写出来吗?@ArigiWiratama markers是arrays@Psidom我编辑了我的代码,检查它的外观like@gramandagrandish看看下面我的答案,我希望能对你有所帮助:DI已经编辑了答案并添加了代码片段。它没有给出一个错误。