我遇到了奇怪的情况。这是第二次碰到这个问题。 我在每个console.log之后添加了注释以查看结果:
Spain.find()
.limit(5)
.exec((findErr, results) => {
if(findErr){
console.log('error while login', findErr);
} else if(!results) {
console.log('err with res');
} else {
let pool = 0;
results.forEach((res, index) => {
pool -= 1000;
console.log(res); // {test1: 10, test2: 30, test3:20}
let max = Math.max(res.test1, res.test2, res.test3);
console.log(res.test1, res.test2, res.test3); // undefined undefined undefined
console.log('max', max); // NaN
});
}
});
任何想法,这怎么可能?
更新:
这段代码作为工人运行,也许这很重要......
Node.js版本:7.10.1,mongoose版本:4.11.4
更新2:代码在typescript类中。 - 也许是解析器错误?