[英]Concatenate multiple arrays in a array of strings
我有這個多個數組:
var array = [["par0_0","par0_1","par0_2"],["par1_0","par1_1","par1_2"],["par2_0","par2_1","par2_2"]];
我想在以下字符串數組中轉換此數組:
var result = [["par0_0,par1_0,par2_0"],["par0_1,par1_1,par2_1"],["par0_2,par1_2,par2_2"]];
最有效的方法是什么?
您可以在array
上使用toString()
將數組值轉換為字符串並連接它們。
var myArr = [ ['par0_0', 'par0_1', 'par0_2'], ['par1_0', 'par1_1', 'par1_2'], ['par2_0', 'par2_1', 'par2_2'] ]; var myArrLen = myArr.length, myOutput = []; // The output array for (var i = 0; i < myArrLen; i++) { var arrEl = []; // Initialize the array for inserting sub-array for (var j = 0; j < myArr[i].length; j++) { arrEl.push(myArr[j][i]); // Add items from same column into sub-array } myOutput[i] = [arrEl.toString()]; // Assign the string to output array } document.write(myOutput); console.log(myOutput);
您也可以兩次使用reduce()
函數
[par0_0, par0_1, par0_2].reduce(function(previousValue, currentValue, index, array) {
var result = "";
if (index != 0)
{
result = ",";
}
return result + previousValue + currentValue;
});
您可以使用join()
。 這是一個例子:
var arr = [["par0_0","par0_1","par0_2"],
["par1_0","par1_1","par1_2"],
["par2_0","par2_1","par2_2"]]
for(var i = 0 ; i < arr.length; i++) {
arr[i] = [arr[i].join()] ;
}
如果不想逗號, join()
接受一個可選的分隔符參數。 默認分隔符是逗號。
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/join
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.