Hi FE !
Ai
git
前端面试题
前端小tip
  • vite
  • webpack
npm
  • vue2
  • vue3
react
GitHub
Ai
git
前端面试题
前端小tip
  • vite
  • webpack
npm
  • vue2
  • vue3
react
GitHub
  • 打开太多新页面后,浏览器崩溃了

打开太多新页面后,浏览器崩溃了

结论是: 加上这个属性就可以了 noopener=yes,noreferrer=yes window.open('http://external.site', 'foo', 'noopener=yes,noreferrer=yes')

为什么会崩溃呢?

当前页面打开出去的页面,和当前页面会占用一个线程,打开一个页面,(新页面的内存,也会加到老的页面上,在这个页面出去的越多,这个线程就越大。但是单线程呢,只能用一个核去渲染,剩余的的核闲着也帮不上忙。这个线程积累的多了未处理越来越多之后,这个浏览器的这个线程下的tab就会都崩溃了。

但是呢,手动沾连接打开tab页面是新的线程。

设置了 noopener=yes,noreferrer=yes 这个属性后,效果同手动粘贴连接打开,每个tab都是完全独立的线程了,充分使用了你电脑的核数,只要你电脑没死机,这个页面将永远蹦不了-。-

当然,这只限于你打开的tab过的情况,若果是,一直就开着一个页面,那看看是不是这个页面有内存泄漏吧

Edit this page
最近更新: 2025/12/2 01:46
Contributors: qdleader
qdleader
本站总访问量 129823次 | 本站访客数 12人