如何在javascript中使用数组作为对象键?
我想制作一本字典,用不同的键可以得到相同的结果,如何在javascript中使用数组作为对象键?,javascript,arrays,json,dictionary,object,Javascript,Arrays,Json,Dictionary,Object,我想制作一本字典,用不同的键可以得到相同的结果, 所以我在javascript中做了类似的事情: var dictionary = { [CHW,CW] : { //CHW and CW is ref to same thing [FLOW,FLW,FW] : 'Result 1' //FLOW, FLW and FW is ref to same thing(Flow) }
所以我在javascript中做了类似的事情:
var dictionary = {
[CHW,CW] : { //CHW and CW is ref to same thing
[FLOW,FLW,FW] : 'Result 1' //FLOW, FLW and FW is ref to same thing(Flow)
}
}
上面的代码只显示了概念,我应该怎么做才能得到下面的预期输出?
预期产出:
dictionary.CHW.FLW //output: 'Result 1'
dictionary.CW.FLW //output: 'Result 1'
dictionary.CW.FLOW //output: 'Result 1'
dictionary.ABC.EFG //output: undefined
我的最终目标是通过调用字典中的不同键来获得相同的输出。是否有任何库/逻辑可以这样做?
谢谢你帮助我 普通对象无法做到这一点,贴图可以: Map对象保存键值对并记住键的原始插入顺序。任何值(对象和基元值)都可以用作键或值
普通对象无法做到这一点,地图可以: Map对象保存键值对并记住键的原始插入顺序。任何值(对象和基元值)都可以用作键或值
您可以在对象中创建计算属性。在这里,我假设您将密钥存储在变量中
var dictionary = {
[CHW] : {
[CW]: {
[FLOW] : 'Result 1'
}
}
}
现在,您可以访问您想要的方式。
dictionary[CHW][CW][FLLOW]为您提供“结果1”您可以在对象中创建计算属性。在这里,我假设您将密钥存储在变量中
var dictionary = {
[CHW] : {
[CW]: {
[FLOW] : 'Result 1'
}
}
}
现在,您可以访问您想要的方式。
dictionary[CHW][CW][FLLOW]为您提供“结果1”请详细说明您尝试执行的操作及其原因。只需使用值本身为object的字符串键。如果您希望同一键返回与另一键相同的结果,则只需将次键指向第一个键的值<代码>变量x={a:3};x、 b=x.a代码>请详细说明您尝试执行的操作及其原因。只需使用值本身为object的字符串键。如果您希望同一个键返回与另一个键相同的结果,则只需将次键指向第一个键值<代码>变量x={a:3};x、 b=x.a你是说,如果用户用
[“x”,“y”]“
键制作了一个地图
,那么他们可以在地图mapVar.x
和mapVar.y
中访问,即使实际上这个键是一个数组,而不是那些唯一的值?谢谢你的帮助,它确实解决了我的问题,我可以使用Map.get(“示例键”)
为了得到我现在想要的东西,你是说如果用户用[“x”,“y”]“
键制作了一个地图,他们可以在地图mapVar.x
和mapVar.y
中访问,即使实际上这个键是一个数组而不是那些唯一的值?谢谢你的帮助,它确实解决了我的问题,我可以使用map.get(“example_key”)
获得我现在想要的更新解决方案,我假设键存储在变量中。更新解决方案,我假设键存储在变量中。