比如用js时一下子要处理几百张图片,如果直接用for的话会卡住很久,我想到用setinterval来代替for,但是正确的做法应该是什么?或者说这种缓慢执行的做法应该称为什么?
比如用js时一下子要处理几百张图片,如果直接用for的话会卡住很久,我想到用setinterval来代替for,但是正确的做法应该是什么?或者说这种缓慢执行的做法应该称为什么?
10 回答11.1k 阅读
15 回答8.4k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
8 回答6.2k 阅读
2 回答2.6k 阅读✓ 已解决
1)在浏览器显示图片的情景下,很多情况你是不需要一下子处理那么多图片的,可以监听页面滚动,当图片需要显示到页面上的时候(图片位置在页面上可见的时候),在执行相应地处理,这就是Lazyload
2)使用setTimeout而不是setInterval函数来分片的处理图片,每次只处理一定的量,保证页面造成的延迟在可接受的范围内;处理完一批后,接着处理下一批~~
3)把复杂的运算交给worker线程去处理也是种方法