未捕获引用错误:未定义日期| JavaScript NodeJs jQuery文件系统
我在用javascript和nodejs测试一些东西。我想问用户一个文件夹,它会显示文件夹中文件的名称、文件类型(可执行文件、文本文件…)和更改日期(上次更改或修改文件的时间)。代码如下:未捕获引用错误:未定义日期| JavaScript NodeJs jQuery文件系统,javascript,jquery,node.js,filesystems,Javascript,Jquery,Node.js,Filesystems,我在用javascript和nodejs测试一些东西。我想问用户一个文件夹,它会显示文件夹中文件的名称、文件类型(可执行文件、文本文件…)和更改日期(上次更改或修改文件的时间)。代码如下: fs.stat(testFolder, (err, stats) => { var time = stats.ctime var day = time.getDay() var month = time.getMonth() var year = time.getFull
fs.stat(testFolder, (err, stats) => {
var time = stats.ctime
var day = time.getDay()
var month = time.getMonth()
var year = time.getFullYear()
var date = day + " " + month + " " + year
})
const testFolder = './tests/'
const fs = require('fs')
fs.readdir(testFolder, (err, files) => {
files.forEach(file => {
var tmp = file.split(".")
var name = tmp[0]
var kind = kinds[tmp[1]]
if(kind == null) {
kind = "File"
}
$( "#test" ).append( "<tr class=\"file\">\
<td>" + name + "</td>\
<td>" + kind + "</td>\
<td>" + date + "</td>\
</tr>" );
});
})
fs.stat(testFolder,(err,stats)=>{
var time=stats.ctime
var day=time.getDay()
var month=time.getMonth()
var year=time.getFullYear()
变量日期=日+月+年
})
const testFolder='./tests/'
常量fs=require('fs')
fs.readdir(testFolder,(err,files)=>{
files.forEach(文件=>{
var tmp=file.split(“.”)
var name=tmp[0]
变量种类=种类[tmp[1]]
如果(种类==null){
kind=“文件”
}
$(“#测试”)。附加(”\
“+name+”\
“+善良+”\
“+日期+”\
" );
});
})
我有固定完整日期的可变时间。
当我使用console.log(date)时,它可以工作。
但是,当我尝试使用jQuery将date变量添加到append方法时,会出现一个错误:
您可以在异步函数中定义和设置日期变量。不能保证在readdir回调运行之前运行回调。将readdir调用移到fs.stat回调中
const testFolder = './tests/';
const fs = require('fs');
fs.stat(testFolder, (err, stats) => {
var time = stats.ctime;
var day = time.getDay();
var month = time.getMonth();
var year = time.getFullYear();
var date = day + " " + month + " " + year;
fs.readdir(testFolder, (err, files) => {
files.forEach(file => {
var tmp = file.split(".");
var name = tmp[0];
var kind = kinds[tmp[1]];
if(kind == null) {
kind = "File";
}
$( "#test" ).append( "<tr class=\"file\">\
<td>" + name + "</td>\
<td>" + kind + "</td>\
<td>" + date + "</td>\
</tr>" );
});
});
});
const testFolder='./tests/';
常数fs=要求('fs');
fs.stat(testFolder,(err,stats)=>{
var-time=stats.ctime;
var day=time.getDay();
var month=time.getMonth();
var year=time.getFullYear();
变量日期=日+月+年;
fs.readdir(testFolder,(err,files)=>{
files.forEach(文件=>{
var tmp=file.split(“.”);
var name=tmp[0];
变量种类=种类[tmp[1]];
如果(种类==null){
kind=“文件”;
}
$(“#测试”)。附加(”\
“+name+”\
“+善良+”\
“+日期+”\
" );
});
});
});
名称和种类在同一方法中定义,日期不是。const
未声明正确的位置fs.stat()
将失败。是的,我修复了它。