我想在JavaScript中使用一个函数来打印所有打印所有2个字母长度的组合使用英文字母A-Z和数字0-9,生成的组合不应该以数字开头。
答案 0 :(得分:1)
产生一个字符串数组,不以数字开头:
const letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".split('');
const digits = "0123456789".split('');
const alphabet = letters.concat(digits);
const result = [].concat.apply([], letters.map(a => alphabet.map(b => a + b)));
console.log(result);

答案 1 :(得分:1)
您可以使用组合模式使用嵌套方法。
var temp = Array.from({ length: 36 }, (_, i) => i.toString(36).toUpperCase()),
result = [temp.slice(10), temp]
.reduce((a, b) => a.reduce((r, v) => r.concat(b.map(w => v + w)), []));
console.log(result);

.as-console-wrapper { max-height: 100% !important; top: 0; }

答案 2 :(得分:0)
您可以简单地遍历所有字母:
var letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var nums = "0123456789";
var result = [];
for(var letter of letters){
for(var letter2 of letters){
result.push( letter + letter2);
}
for(var num of nums){
result.push(letter + num);
}
}
答案 3 :(得分:0)
letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (var i = 26; i--;) {
for (var j = 10; j--;) console.log(letters[i]+j);
for (var j = 26; j--;) console.log(letters[i]+letters[j]);
}
答案 4 :(得分:0)
letters = "ZYXWVUTSRQPONMLKJIHGFEDCBA";
for (var i = 26; i--;) {
for (var j = 26; j--;) console.log(letters[i]+letters[j]);
}