我想使用谷歌关闭库显示进度条 在JavaScript中进行大量计算。示例代码如下。
// An essential code which is not working well
var pb = new goog.ui.ProgressBar;
for (i = 0; i < 100; i += 1) {
// Some costly process here
pb.setValue(i);
};
我知道JavaScript是完全单线程模型。所以上面的一个片段 没有像我预期的那样工作。 有没有人知道在这种情况下使用闭包进度条的有效方法?
提前致谢。
答案 0 :(得分:2)
最常见的方法是将昂贵的流程细分为小块,并在每次迭代时更新进度条。除非您想考虑使用web workers,否则这些仅在少数现代浏览器中受支持。
另外,请不要忘记声明i
变量,否则它将成为隐含的全局变量。