Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javascript中使用数组作为对象键?_Javascript_Arrays_Json_Dictionary_Object - Fatal编程技术网

如何在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”)
获得我现在想要的更新解决方案,我假设键存储在变量中。更新解决方案,我假设键存储在变量中。