将数组拆分为多个数组或备用数组 - Javascript



我有一个数组

var array = ['123.456789,123.1','456.7890123,234.1','789.0123456,345.1'];

我想要的结果是

var array1 = [123.456789,456.7890123,789.0123456];
var array2 = [123.1,234.1,345.1];

这样做的最佳实践是什么?我一直在看.拆分(");但我想知道最好的方法。

提前感谢马赫

var arr = ["123.456789,123.1","456.7890123,234.1","789.0123456,345.1"];
var array1 = [],
    array2 = arr.map(function(e) {
        e = e.split(",");
        array1.push(+e[0]);
        return +e[1];
    });
console.log(array1, array2);

我认为您应该使用split函数。试试这个或看看这个演示:

var array = ['123.456789,123.1','456.7890123,234.1','789.0123456,345.1'];
var array1 = [], array2 = [];
for(var i=0; i<array.length; i++){
   array1[i] = array[i].split(",")[0];
   array2[i] = array[i].split(",")[1];
}

基本上,您应该对数组进行迭代,并根据逗号将每个项的字符串拆分为两部分。每个部分都进入各自的阵列。

如果允许Array.forEach()

var a1 = [], a2 = [];
array.forEach(function(item) {
  var parts = item.split(',');
  a1.push(+parts[0]);
  a2.push(+parts[1]);
}

否则:

var a1 = [], a2 = [];
for (var i = 0, item; item = array[i]; ++i) {
  var parts = item.split(',');
  a1.push(+parts[0]);
  a2.push(+parts[1]);
}

最新更新