Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Firefox插件。如何确定数组的元素是文件还是目录?_Javascript_Firefox_Firefox Addon_Firefox Addon Sdk - Fatal编程技术网

Javascript Firefox插件。如何确定数组的元素是文件还是目录?

Javascript Firefox插件。如何确定数组的元素是文件还是目录?,javascript,firefox,firefox-addon,firefox-addon-sdk,Javascript,Firefox,Firefox Addon,Firefox Addon Sdk,我正在尝试获取Firefox加载项中的文件和目录列表 var io_file = require("sdk/io/file"); var HomePath = require('sdk/system').pathFor("Home"); var list_files = io_file.list(HomePath); 如何确定数组元素是文件还是目录?Doconsole.log('debug:',list_files)然后按Ctrl+Shift+J,然后单击list_files旁边的链接,然后

我正在尝试获取Firefox加载项中的文件和目录列表

var io_file = require("sdk/io/file");
var HomePath = require('sdk/system').pathFor("Home");

var list_files = io_file.list(HomePath);
如何确定数组元素是文件还是目录?

Do
console.log('debug:',list_files)
然后按Ctrl+Shift+J,然后单击list_files旁边的链接,然后它在varaible viewer中打开,您可以在那里浏览它

像这样,请注意“浏览器控制台”框并查看下面的“属性”部分,当我单击上面日志中的“[object MouseeEvent]”时,会出现该选项。

只有一组值​​现在打开数组中的每一项,查找是否指示dir的内容。因此,就像打开一个已知目录的项目和一个已知非目录的项目一样,然后比较属性。结果数组中没有属性。你能把你的插件上传到github吗?我来看看,请把你的插件放到列表的console.log上,这样我就可以在浏览器控制台中为你安装并查看变量查看器,然后再报告。你能上传xpi吗(我试图在repos中找到一个插件sdk插件,这样我就可以为您的代码切换出main.js,但失败了:(
const fileIO = require("sdk/io/file");

let path = "/Users/Work/";
let list = fileIO.list(path);

for (i = 0; i < list.length; i++) {
  let item = fileIO.join(path, list[i]);
  if (fileIO.isFile(item)) {
    console.log(item + " is a file");
  }
  else {
    console.log(item + " is a directory");
  }
}
    const {Cu} = require("chrome");
    const {TextEncoder, OS} = Cu.import("resource://gre/modules/osfile.jsm", {});

    var iterator = new OS.File.DirectoryIterator('/home/user');
    var promise = iterator.forEach(
        function onEntry(entry) {
            if (entry.isDir) { // is Directory
                console.log(JSON.stringify(entry));
            } else { // is File
                console.log(JSON.stringify(entry));
            }
        }
    );
    promise.then(
        function onSuccess() {
            iterator.close();
            return subdirs;
        },
        function onFailure(reason) {
            iterator.close();
            throw reason;
        }
    );