性能:memory 属性

已弃用:此特性不再推荐。虽然某些浏览器可能仍然支持它,但它可能已经从相关的网络标准中删除,可能正在删除过程中,或者可能仅为兼容性目的而保留。请避免使用它,如果可能,请更新现有代码;请参阅本页底部的兼容性表格以指导您的决策。请注意,此特性可能随时停止工作。

非标准:此特性未标准化。我们不建议在生产环境中使用非标准特性,因为它们浏览器支持有限,并且可能会更改或被移除。但是,在没有标准选项的特定情况下,它们可以是合适的替代方案。

这是一个非标准已弃用的只读 memory 属性,它返回 JavaScript 堆的大小,有助于衡量和减小网站的内存占用。

请注意,此 API 提供的信息并不可靠,因为如果网页共享同一个堆,它可能会高估实际内存使用量;如果网页使用分配在单独堆中的 worker 和/或跨站 iframe,它可能会低估实际内存使用量。关于“堆”的确切含义,尚未标准化。该 API 仅在基于 Chromium 的浏览器中可用。

一个旨在替代 performance.memory 的新 API 是 Performance.measureUserAgentSpecificMemory()。它试图估算网页使用的内存。

返回一个具有以下属性的对象

jsHeapSizeLimit

对该上下文可用的堆的最大大小(以字节为单位)。

totalJSHeapSize

已分配的总堆大小(以字节为单位)。

usedJSHeapSize

当前活动的 JS 堆段(以字节为单位)。

示例

获取 JavaScript 堆大小

调用 performance.memory 会返回类似这样的对象

json
{
  "totalJSHeapSize": 39973671,
  "usedJSHeapSize": 39127515,
  "jsHeapSizeLimit": 4294705152
}

规范

无。

浏览器兼容性

另见