gpt4 book ai didi

Javascript - 字符串到坐标数组

转载 作者:行者123 更新时间:2023-11-30 09:52:33 25 4
gpt4 key购买 nike

我是 Javascript 的新手,在将字符串转换为坐标值数组时遇到了一些问题。

这是我的字符串(临时字符串可能有更多/更少的坐标):

var str = "12:13.94:13:14.9:";

每个坐标由“:”分隔,其中

str[0] = x1;
str[1] = y1;
str[2] = x2;
str[3] = y2;
.................

我希望它返回一个二维坐标数组:

var cArray = [[12,13.94],[13,14.9].........];

有什么办法吗?

我试过了:

var cString = coorStr.split(":");

但它只是返回一个字符串数组,

这是我目前所拥有的:https://jsfiddle.net/mLskwxyj/

最佳答案

tadman's answer提供了一种将字符串解析为数字数组的方法:

var str = '12:13,94:13:14,9';
var num = str.split(':').map(Number);

对于将此数组拆分为 [x, y] 对的通用方法,this answer提供了一个简洁的解决方案。我在下面稍微修改了它(以删除 Lodash 依赖项):

var coords = num.reduce(function (r, v, i, a) {
// on every even element, grab a pair of numbers and
// add to the result
if (i % 2 === 0)
r.push(a.slice(i, i + 2));

return r;
}, []);

Here是一个工作示例。请注意,带有预分配结果数组的 for 循环的性能会更高。我只是想提供一种在单个语句中完成此操作的方法。

关于Javascript - 字符串到坐标数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35638734/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com