我想创建一个函数来列出某个目录中的文件,并通过扩展名对其进行过滤:
这是我的代码看起来像:
var fs = require('fs'),
path = require('path');
var filterList = function (path, ext) {
return fs.readdir(path, function (err, files) {
if (err) {
console.log(err);
} else {
for (var i = 0; i < files.length; i++) {
if (path.extname(files[i]) === '.' + ext) {
return console.log(files[i]);
}
}
}
});
};
filterList(process.argv[2], process.argv[3]);
但它会返回此错误:
if (path.extname(files[i]) === '.' + ext) {
^
TypeError: path.extname is not a function
知道为什么吗?
答案 0 :(得分:0)
将arg的名称从path
更改为_path
,其冲突
var fs = require('fs'),
path = require('path');
var filterList = function (_path, ext) {
return fs.readdir(_path, function (err, files) {
if (err) {
console.log(err);
} else {
for (var i = 0; i < files.length; i++) {
if (path.extname(files[i]) === '.' + ext) {
return console.log(files[i]);
}
}
}
});
};
filterList(process.argv[2], process.argv[3]);