0

我正在创建一个谷歌浏览器扩展来帮助测试。扩展基本上用虚拟数据填充和输入。

我需要以某种方式存储这些虚拟数据。

虚拟数据不会改变,所以硬编码是可以接受的。

最好的方法是什么?

(想想 2000 个男性名字、2000 个女性名字、4000 个姓氏、5000 个公司名称、5000 个电子邮件地址、50 个国家/地区名称、这些国家/地区的所有城市、所有 50 个国家/地区的本地化电话格式等)

如您所见,这是相当大量的数据。

我的扩展程序已经请求无限存储。

我应该使用网络数据库吗?还是一大堆数组?或者可能是一个包含数组的对象?

4

2 回答 2

1

将其存储在数组中并不是一个坏主意。您可以创建一个data.js包含所有数组初始化的单独文件,然后将其作为常用脚本包含到背景页面中。

其他可能性是localStorage(但您需要以某种方式对其进行初始化,这意味着可能从数组中读取并保存到存储中,这使得 localStorage 成为一种无用的额外步骤)。当您想要在扩展升级之间保留用户创建的数据时,localStorage 更有用。

我认为 WebDB 在这里有点过分了,而且您仍然需要以某种方式对其进行初始化,这再次意味着从数组中读取。唯一的优点是您可以运行数据查询,但 Chrome 中的 js 实现有很多数组操作方法,因此您也可以模拟数组查询。

我认为在您的情况下,如果所有数据都是预先定义的并且从不更改数组将是最好的解决方案。

于 2011-03-04T01:33:16.400 回答
1

对于 Google Chrome 扩展,您应该使用 Web SQL 数据库或 IndexDB。您可以在这里找到不同之处:http: //hacks.mozilla.org/2010/06/comparing-indexeddb-and-webdatabase/

于 2011-03-04T01:33:45.060 回答