如何在JavaScript中动态创建二维(2D)字符串数组

时间:2019-05-10 22:14:44

标签: javascript

如果单词是ABC

A[0][0]="AA"   A[0][1]="AB"   A[0][2]="AC"
A[1][0]="BA"   A[1][1]="BB"   A[1][2]="BC"
A[2][0]="CA"   A[2][1]="CB"   A[2][2]="CC"

用于,字符串或数组方法。

2 个答案:

答案 0 :(得分:1)

const a = [..."ABC"];

console.log(
  a.map(l => a.map(c => l + c))
);

答案 1 :(得分:0)

一个奇怪的请求。这是您要找的吗?

const word = "ABC";
const letters = word.split("");
const array = [];
letters.forEach((letter1,index1) => {
  letters.forEach((letter2,index2) => {
     if (!array[index1]) {
        array[index1] = [];
     }
     array[index1][index2] = letter1+letter2;
  });
});
console.log(array);

更新:

使用较旧Javascript的另一个版本。另外,使用下面的更多功能方法来查看Asaf的解决方案,这非常优雅。

var word = "ABC";
var letters = word.split("");
var array = [];
for(var index1 = 0;index1!==letters.length;index1++) {
  for(var index2 = 0;index2!==letters.length;index2++) {
     if (!array[index1]) {
        array[index1] = [];
     }
     array[index1][index2] = letters[index1]+letters[index2];
  }
}
console.log(array);