gpt4 book ai didi

javascript - WebSQL 或 LocalStorage - iOS/Cordova/JavaScript

转载 作者:行者123 更新时间:2023-11-29 01:54:26 24 4
gpt4 key购买 nike

我们刚刚重新设计我们 1 年前构建的应用程序。我们希望改进应用程序中的一些步骤并加快速度。现在我们的登录过程最多需要 15 秒。我们的 WebSQL 数据库中保存了很多数据。

我们尝试将所有无意义的数据保存到 localStorage 中,该过程现在最多需要 2 - 3 秒,这比我们的 WebSQL 解决方案快得多。

所以现在我想知道为什么会这样,并查看了 WWW。如果我们现在想将整个流程从 WebSQL 更改为 LocalStorage,有什么需要考虑的吗?

也许有一个很棒且快速的 Cordova 存储插件 - 我没有找到那个,你知道吗?

localStorage 是代替使用 WebSQL 数据库来保存数据的好方法吗?

提前致谢!

最佳答案

本地存储的主要限制是存储容量。在 iOS 上,每个应用程序的容量限制为 5Mb,因此如果要存储大量数据,很快就会达到这个限制。对于 WebSQL,iOS 为您提供 50Mb。参见 this page跨平台的存储容量。

您可能需要考虑使用像 lawnchair 这样的东西作为抽象层;它有一系列 adapters因此您可以在代码中保持接口(interface)相同,并尝试通过适配器机制交换不同的存储。默认情况下,它使用本地 (DOM) 存储,但具有适用于 WebSQL 和 IndexedDB 等的适配器。

如果您需要大量存储容量,请考虑使用 this plugin 之类的东西这允许您使用具有无限容量的 native SQLite 数据库。

如果性能是一个问题,您可能想要放弃抽象层(例如 lawnchair)并手动编写 SQL 以与数据库交互,以便对其进行优化。我创建了 this example project它使用上面的 SQLite 插件和优化的 SQL。在我的 iPad2/iOS 8.3 上,它能够在大约 1.4 秒内执行 15000 多次插入。

关于javascript - WebSQL 或 LocalStorage - iOS/Cordova/JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31044221/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com