我正在使用他们的ascii值生成字母表。 我有这样的for循环
var alpha = [];
for(var i=65;i<=90;i++){
res = String.fromCharCode(i);
alpha.push(res);
}
document.getElementById("demo").innerHTML = alpha;
for(var i=65;i<=90;i++){
res = String.fromCharCode(i);
alpha.push(res);
}
document.getElementById("demo").innerHTML = alpha;
所以当我提供这个时,我得到一个结果[A.B,C .... Z]的数组。 现在我想要的是推动我想要的所有26个字母[AA,AB,AC ... AZ]。 这怎么可能?
答案 0 :(得分:2)
这可能就是你所追求的:
var alpha = [];
for(var i=65;i<=90;i++){
alpha.push(String.fromCharCode(i));
}
for(var i=65;i<=90;i++){
var first = 'A';
var next = String.fromCharCode(i);
alpha.push(first + next);
}
document.getElementById('demo').innerHTML = alpha;
您可以在此处查看正在运行的示例:https://jsfiddle.net/xr5dwLu1/1/
答案 1 :(得分:1)
在初始循环中添加另一个循环:
for(var i=65;i<=90;i++){
// add new loop with different variable for index (j)
for(var j = 65; j <= 90; j++) {
var res = String.fromCharCode(i) + String.fromCharCode(j);
alpha.push(res);
}
}
答案 2 :(得分:0)
是的,它是!尝试嵌套循环:
for(var i=65;i<=90;i++){
for(var j=65;j<=90;j++){
res = String.fromCharCode(i) + String.fromCharCode(j);
alpha.push(res);
}
}
更新:编辑完成后,我看起来就像你要求的那样:
for(var i=65;i<=90;i++) {
res = 'A' + String.fromCharCode(i);
alpha.push(res);
}
}
答案 3 :(得分:0)
带发电机的ES6解决方案。
function* abc(pre){
var i = 10;
while(i < 36) {
yield pre + i.toString(36).toUpperCase();
i++;
}
}
let array = [...abc('A')];
document.write('<pre>' + JSON.stringify(array, 0, 4) + '</pre>');
&#13;