gpt4 book ai didi

javascript - 内存中的数据存储-Javascript

转载 作者:搜寻专家 更新时间:2023-11-01 00:34:17 26 4
gpt4 key购买 nike

我想一直在内存中存储这种信息。

app_id    admin_id    url           status
123 1 xyz.com 1
123 2 xyz.com 0
539 3 exmaple.com 1
876 4 new.com 1

我主要关心的是我希望查找过程既简单又快速。点赞随时查询:

  1. 获取特定 admin_idurlstatus
  2. 获取特定 app_id 的所有 admin_id

那么我如何将这些信息存储在内存中。

最佳答案

你可以做如下的事情。为每一行创建一个对象。并在数组 byAdminId 中保留对 admin-id 的引用,并在对象 byAppId 中保留对 app-id 的引用,add 函数在下面执行此操作. getByAppIdgetByAdminId 函数用于检索这些对象。

var store = (function() {
var byAdminId = [];
var byAppId = {};

return {
add: function(appId, adminId, url, status) {
var d = {
appId: appId,
adminId: adminId,
url: url,
status: status
};
if (appId in byAppId) { // You could also use byAppId.hasOwnProperty(appId) here
byAppId[appId].push(d);
} else {
byAppId[appId] = [];
byAppId[appId].push(d);
}
byAdminId[adminId-1] = d;
},
getByAppId: function(appId) {
if (appId in byAppId) {
return byAppId[appId];
}
return null;
},
getByAdminId: function(adminId) {
return byAdminId[adminId-1];
}
};
})();

store.add(123, 1, "abc.com", 1);
store.add(123, 9, "xyz.com", 0);
store.add(539, 3, "exmaple.com", 1);
store.add(876, 4, "new.com", 1);

var objs = store.getByAppId(123);
for (var i = 0; i < objs.length; i++) {
// access admin id as follows
// objs[i].adminId
}

var obj = store.getByAdminId(1);
// access the url and status as follows
// obj.url
// obj.status

关于javascript - 内存中的数据存储-Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8638122/

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