javascript - JavaScript 中的简单缓存

标签 javascript caching

如果我将数据保存在全局 var cache = {} 中,可能会出现什么潜在问题?

它会被垃圾收集器收集吗? 我可以确保它一直持续到观看结束吗?

是否有我可以使用的浏览器内置功能,这样即使下次打开页面,我也可以准备好缓存的数据?

谢谢。

最佳答案

听起来您需要了解 javascript 中全局数据的生命周期:

  1. 在给定页面的生命周期内,全局变量将持续存在,直到您清除它的值为止。它永远不会被垃圾收集。因为它是全局性的,所以它永远不会超出范围。

  2. 当查看者转到该窗口中的新页面或关闭该浏览器窗口时,该前一个页面的所有 javsacript 数据都会被释放并且不再可用。

  3. 可以通过三种方式保存数据,以便在该页面或其他页面的 future View 中使用它:1) Cookie,2) 本地存储,3) 服务器存储。在所有这些情况下,都必须从其存储位置检索数据并将其放回到 JavaScript 中。

关于javascript - JavaScript 中的简单缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11840159/

相关文章:

javascript - React 中的类型检查

javascript - 使用 json 模式渲染 react 组件

javascript - ERROR 错误 : Uncaught (in promise), 无法匹配任何路由。网址段

c# - 在 ASP.NET 5/MVC 6 中使用 IDistributedCache 和 Redis - 类型或命名空间 'Microsoft.Caching' 不存在

带有 Redis 缓存的 Django 1.9

php - 带有 php 驱动站点的 html5 离线缓存

performance - 为什么当我的循环包含在一个缓存行中时,它会快得多?

javascript - 重置选择元素

javascript - 如何在 Shield UI JavaScript 折线图中添加自定义标签

caching - 内存缓存和内存数据库之间的区别