首页 > 解决方案 > 在 for 循环中使用 typeof 变量会引发错误

问题描述

出于某种原因,当我尝试访问循环rates内的变量时for-in,它会抛出一个ReferenceError,但我可以在循环之前使用它。我似乎无法弄清楚是什么导致了这种行为。即使这样做也会typeof引发此错误,但它适用于根本从未使用过的变量:

const test = 1;
const rates = await Rate.find({
    propertyId: property._id,
    ratePlanId: {$in: ratePlanIds},
 });

console.log(test); // 1
console.log(typeof rates); // object

for (const i in ratePlans) {
  console.log(test); // 1
  console.log(typeof asdlkfjasdajsfl); // undefined
  console.log(typeof rates); // ReferenceError: rates is not defined
  //[... rest of code]
}

标签: javascriptnode.jsasync-awaitscope

解决方案


推荐阅读