javascript将变量组合成数组

javascript combine variables into array

本文关键字:数组 组合 变量 javascript      更新时间:2023-09-26

有人能帮我使用这个javascript吗。我有两个变量,用逗号分隔。

var names = "Verwerkende industrie, Retail, Primaire producent, Out of home, Groothandel, Grondstof, Consument, Bewerkende industrie";
var numbers = "9, 3, 4, 2, 7, 9, 3, 2";

我想把它们组合成一个数组,最终看起来像这个

var combined = [
                ['Verwerkende industrie', 9], 
                ['Retail', 3], 
                ['Primaire producent', 4], 
                ['Out of home', 2], 
                ['Groothandel', 7], 
                ['Grondstof', 9], 
                ['Consument', 3], 
                ['Bewerkende industrie', 2]
            ];
var names = "Verwerkende industrie, Retail, Primaire producent, Out of home, Groothandel,      Grondstof, Consument, Bewerkende industrie";
var numbers = "9, 3, 4, 2, 7, 9, 3, 2";
var namesArray = names.split(","); //split the string at ','. split() returns an array of result
var numbersArray = numbers.split(",");
var resultArray = []; //array to hold result
//since the namesArray and numbersArray are the same length, you can use one for-loop
for (var i=0, len=namesArray.length; i < len; i++) {
  resultArray[i] = [namesArray[i], parseInt(numbersArray[i])];
}

这应该可以工作。

var names = "Verwerkende industrie, Retail, Primaire producent, Out of home, Groothandel, Grondstof, Consument, Bewerkende industrie";
var numbers = "9, 3, 4, 2, 7, 9, 3, 2";
names = names.split(',');
numbers = numbers.split(',');
var combined = [];
for(var i = 0; i < names.length; i++){
  combined.push([names[i], parseInt(numbers[i])]);
}

不幸的是,JavaScript没有"zip"功能,但您可以做同样的事情:

var namesArr = names.split(", ");
var numbersArr = numbers.split(", ").map(function (s) { return parseInt(s); });
var combined = [];
for (var i = 0; i < namesArr.length; i++)
{
    combined[i] = [namesArr[i], numbersArr[i]];
}
var names = "Verwerkende industrie, Retail, Primaire producent, Out of home, Groothandel, Grondstof, Consument, Bewerkende industrie";
var numbers = "9, 3, 4, 2, 7, 9, 3, 2";
function zip(arrays) {
    return arrays[0].map(function(_,i){
        return arrays.map(function(array){return array[i]})
    });
}
// paramert = array
zip([
 names.split(/,'s+/),
 numbers.split(/,'s+/).map(function (i) { return parseInt(i); })
]);