js如何将["2", "3,4", "5,6"]格式转化成[[1.2],[3,4],[5,6]]

各位大佬,我现在在做一个地图根据坐标数组会显出区域面积的功能,我现在需要的格式是数组里面套数组的格式,才能在地图上回显 [ [120.861336, 31.757154], [120.860832, 31.757893], [120.862012, 31.757838], [120.860692, 31.757715], ]; 这是我要的格式, "120.860832,31.757893;120.862012,31.757838;120.860692,31.757715" 这是后端返回的格式。 我把这个string类型以;分割转化成数组之后就成了这样 ["120.860832,31.757893", "120.862012,31.757838", "120.860692,31.757715"] img 我现在想把我转化后的格式再转化成 [ [120.861336, 31.757154], [120.860832, 31.757893], [120.862012, 31.757838], [120.860692, 31.757715], ];

这种格式,要怎么转呀?或者怎么样能把后端返给我的string类型的转化成上面这种格式呢? 感谢

循环你转过一次的数组,对里边的每一项再转一次就好了,供你参考下:

img

你遍历数组,对每个元素进行分割。然后放二维数组里面。

img

有帮助能点个采纳吗,谢谢~

  
    var s = "120.860832,31.757893;120.862012,31.757838;120.860692,31.757715";
    var arr = s.split(';')
    arr = arr.map(v => v.split(',').map(i => parseFloat(i)));
    console.log(arr)

第一次提问,格式看着好像有点乱,望谅解

img 这是最终我要的格式

img 这是后端返回的格式

img

["2", "3,4", "5,6"].map(i => i.split(","))
 let str="120.860832,31.757893;120.862012,31.757838;120.860692,31.757715";
    let arr=str.split(";"); //先以分号分割
    //循环遍历在以逗号分割
    let arr1=[];
    arr.map((item)=>{
     arr1.push(item.split(","));
    })
    console.log(arr1)

这是你要的数字类型

img