問題來自於excle的橫座標序號,很明顯是個26進制,就模擬一下進制轉換就行了。
爲什麼js不能對字符串某一位直接修改阿!!
let maxdeep = 27*26;
var arry=new Array();
var s = "A";
for(var t = 1; t <= maxdeep; t++) {
//轉成數組後反轉合併
arry.push(s.split("").reverse().join(""))
if(s.charAt(0) == 'Z') {
var i;
for(i = 0; i < s.length && s.charAt(i) == 'Z'; i++) {
s = s.substring(0, i)+"A"+s.substring(i+1);
}
if(i == s.length) {
s = s + 'A';
}
else s = s.substring(0,i)+String.fromCharCode(s.charCodeAt(i)+1)+s.substring(i+1);
}
else s = String.fromCharCode(s.charCodeAt(0)+1)+s.substring(1);
console.log(s);
}
console.log(arry);