学习啊 js 的虚拟内存

105 阅读1分钟

js 怎么降低虚拟内存?

概念: 首先理解什么是内存,既代码运行中占用的 memery,并非磁盘硬盘加载。每种语言运行都会占用内存,基本都是变量,数据结构,值,加载库,run-time 之类的。

开发过程中可以降低的方法:

一、 优化代码结构

  1. 简化代码,比如自己写的原生 for 语句,可以用 reduce 一个方法代替。那么代码量不仅减少,而且原生方法 reduce 的性能也会更高。
let sum = 0;
for (let i = 0; i < arr.length; i++) sum += arr[i]
arr.reduce((pre, cur) => pre + cur, 0);
  1. 减少全局变量,它会直到页面关闭才释放内存。能划分作用域的,尽量使用作用域。此处应该思考一下闭包知识。

二、合理使用数据结构

  1. 选择合适的数据结构和写 html 选择合适的标签是一个意思。当然 div + css 大道其行的今日,可以实现任何相同效果,但是很多人都忘记了标签的使用,甚至大多语意标签,它们其实比较有用的,比如 label 属性,article 标签,for 属性。 回归正题,JS 里面数组用来寻找值是可以的,但是如果用来判断唯一值,可用 Set,效率高,比 includes API 好。Map 可以用来代替 pure Object。

三、事件监听器及时释放 四、避免闭包引起泄露 五、使用 chrome 内存分析快照工具优化。 六、代码分割打包和懒加载技术。 七、使用高效的垃圾回收机制,理解回收机制,设计模式重复使用对象。