Node.js 创建具有27x26的文件夹结构,即具有26个深级别的所有字母表
我想创建文件夹结构27X26,即Node.js 创建具有27x26的文件夹结构,即具有26个深级别的所有字母表,node.js,path,fs,Node.js,Path,Fs,我想创建文件夹结构27X26,即 A/A/B..Z B/A/B..Z C/A/B..Z . . Z/A/B..Z 我正在尝试以下代码,但它不起作用 var fs=require('fs'), path=require('path'); var arr=['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']; var itr=0;
A/A/B..Z
B/A/B..Z
C/A/B..Z
.
.
Z/A/B..Z
我正在尝试以下代码,但它不起作用
var fs=require('fs'),
path=require('path');
var arr=['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
var itr=0;
function createAtZ(pth){
if(pth){
if(itr<676){
for(let i=0;i<26;i++){
dir = path.join(__dirname,pth+'/'+arr[i]);
if (!fs.existsSync(dir)){
fs.mkdirSync(dir);
}
}
for(let i=0;i<26;i++){
createAtZ(pth+'/'+arr[i])
}
}
}
itr++;
}
for(var i=0;i<26;i++){
createAtZ('./');
}
var fs=require('fs'),
路径=要求(“路径”);
变量arr=['A'、'B'、'C'、'D'、'E'、'F'、'G'、'H'、'I'、'J'、'K'、'L'、'M'、'N'、'O'、'P'、'Q'、'R'、'S'、'T'、'U'、'V'、'W'、'X'、'Y'、'Z'];
var-itr=0;
函数createAtZ(pth){
如果(pth){
如果(itr
这样,更容易跟踪变量,因为它们对于函数的每次调用都是不同的
这样,更容易跟踪变量,因为它们对于函数的每次调用都是不同的
let fs = require("fs");
let path = require("path");
function getLetter(n) {
return String.fromCharCode("A".charCodeAt(0) + n);
}
function createDirIfNotExist(dir) {
if (!fs.existsSync(dir)) {
fs.mkdirSync(dir);
}
}
function createAt(dir) {
dir = path.join(__dirname, dir);
createDirIfNotExist(dir);
for (let i = 0; i < 26; i++) {
dir = path.join(dir, getLetter(i));
createDirIfNotExist(dir);
}
}
for (let i = 0; i < 26; i++) {
createAt(getLetter(i));
}
function createAt(dir) {
dir = path.join(__dirname, dir);
createDirIfNotExist(dir);
createAtRecursive(dir, 0);
}
function createAtRecursive(dir, itr) {
if (itr < 26) {
dir = path.join(dir, getLetter(itr);
createDirIfNotExist(dir);
createAtRecursive(dir, itr + 1);
}
}