【发布时间】:2017-11-12 15:54:57
【问题描述】:
我有一个记忆问题。在两个对象之间计算了一个值,我想存储它,这样我就可以从对象中传入两个数字 id 以获取值,而不管我传入 id 的顺序如何。
我可以将它存储在两个 id 下,或者检查两个 id,但出于好奇,我想知道是否有更有效的解决方案。
例子:
检查两个 id:
var storedValues = {};
function generateValue(a, b)
{
if (storedValues[a.id][b.id])
return storedValues[a.id][b.id];
else if (storedValues[b.id][a.id])
return storedValues[b.id][a.id];
else
// Generate value, store it under a.id and return it
}
将其存储在两个 id 下:
var storedValues = {};
function generateValue(a, b)
{
if (storedValues[a.id][b.id])
return storedValues[a.id][b.id];
else
// Generate value, store it under a.id and b.id and return it
}
如何从两个数字生成唯一的映射键,这样我就可以使用这两个数字检索值,而不管传递它们的顺序如何?
顺便说一句,我正在使用 JavaScript。
【问题讨论】:
-
请添加一些数据来说明问题。也许您也可以添加一些您尝试过的代码。
-
我已经编辑过了。
标签: javascript collections key