function merge(sections, items) {
console.log(items); // logs correct items
return new Promise(function(resolve, reject) {
console.log(items); // logs undefined
var items = _.groupBy(items,'section_id');
// items = _.groupBy(items, 'section_id'); // the above items logs correct without the `var`
resolve({resolved: true});
})
}
这太超级怪了。不知道为什么第一个console.log
中的项目打印正常。但是,一旦进入承诺,它就会打印undefined
。没有同名的全局变量。
是什么导致这种情况?
但是当我在promise中的项目之前移除了var时,它工作了。为什么会这样?