控制台打印出值但该值不能分配给变量?

时间:2017-02-20 23:59:38

标签: asynchronous typescript console.log

    var a = "";
    Promise.all(aList).then(function(final) {

        for (let i in final) {
            var newbeet= final[i];
            a = newbeet;
            console.log(`a: ${a}`);
        }
});

控制台将显示:""的值,但实际上,a被分配给""而不是""的价值。如何解决这个问题(可能是异步?)?我尝试使用Promise.all,但仍然没有设法解决它。

在用于从zip中提取文件的Promise.all中,我为它创建了一个额外的promise和Promise.all(< - 上面显示的那个),这样额外的一个可以帮助我从zip中提取html文件中的信息。我不知道这是否是提取html信息的有效方式。

1 个答案:

答案 0 :(得分:0)

a的回调运行之前,

Promise.all不会被分配给某个值。如果您有一些依赖于它的代码,则在分配a之前不需要运行它。

(如果这没有帮助,我不太明白这个问题)