Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.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 JS数组始终返回未定义且长度=0_Javascript_Arrays - Fatal编程技术网

Javascript JS数组始终返回未定义且长度=0

Javascript JS数组始终返回未定义且长度=0,javascript,arrays,Javascript,Arrays,使用Node.js 您好,我有一个带有users用户类的数组,当我用console.log打印数组时,它正确显示内容并显示其长度为3,但当我尝试从数组中获取任何内容时,它返回undefined,对于*.length,它返回0。问题出在哪里 exports.users=[]; exports.loadUsers=回调=>{ 让更多=真实; 设i=0; 惠勒莫尔{ 让我们=_usersFolder+us+i+/; 存在性综合征{ fs.readFilepath.joinus+personal.js

使用Node.js 您好,我有一个带有users用户类的数组,当我用console.log打印数组时,它正确显示内容并显示其长度为3,但当我尝试从数组中获取任何内容时,它返回undefined,对于*.length,它返回0。问题出在哪里

exports.users=[]; exports.loadUsers=回调=>{ 让更多=真实; 设i=0; 惠勒莫尔{ 让我们=_usersFolder+us+i+/; 存在性综合征{ fs.readFilepath.joinus+personal.json,err,data=>{ 伊弗{ console.log加载文件失败!; 回来 } 让json_personal=json.parsedata; this.users.pushnew Userjson_personal; }; i++; }否则{ 更多=错误; } } 回调; } exports.getUserById=id=>{ console.logthis.users; console.loglength:+this.users.length; console.logthis.users[0]; forlet i=0;i} 我希望您在控制台中打印后进行定义

var用户=[]; console.logusers; console.loglength:+users.length; console.logusers[0]; 用户:1; 用户2;
用户3 这取决于您使用“this”对象的位置。“this”引用的对象可能与存储在“this”中的对象不同。根据使用它的范围的不同,“this”中的数组也会有所不同

我需要更多的信息来帮助你

var users=[{"num":1},{"num":2},{"num":3}];

console.log(this.users);
console.log("length: " + this.users.length);
console.log(this.users[0]);
输出

3[对象,对象,对象]

长度:3


对象{a:1}

它是那里的一个对象。请尝试打印此。用户[0]。键所有三行代码都是连续的吗?请添加更多实际代码。这三行只是一个示例,您可以查看它们各自返回的内容。这很奇怪,因为它实际上适用于其他函数。另外,如果我尝试使用for-each,则不起作用。我假设这不是您的实际代码。这就是为什么我要实际的代码。基于示例代码,我们无能为力;完美吗?正如您在图中所看到的,它正确地打印了数组,但之后就好像数组是空的,因为console.log打印了对对象的引用这是因为我在节点的exports.*方法中,您在哪里定义了“users”数组?