如何基于另一个JSON对象中的字符串为JSON对象选择键值

时间:2019-01-17 17:33:24

标签: node.js json

我正在为要与数据库通信的Web应用程序设置API,并且需要支持多个表。

我有一个JSON对象,以及JSON对象的表([{"name":"video_games", "columns":["name", "console", "wiki"]}, {"name":"game_wishlist", "columns":["name", "console", "wiki"]}]),它具有表和列的名称,但是我需要一种方法来命中另一个JSON对象以使用规范获取特定数据在这个对象中。

示例:games[i] = [table[i].name, table[i].console, table[i].wiki]是我目前拥有的,但是我需要一种方法,可以将我上面显示的对象中的其他表的名称,控制台和Wiki设置为其他名称,而无需设置大量if语句并对其进行硬编码。

2 个答案:

答案 0 :(得分:0)

如果我没看错,那么您应该知道可以使用与数组相似的括号表示法访问对象属性,从而使键可以使用可变字符串。因此,例如,您可以这样做:

let keyName = 'wiki';
games[i][keyName] = table[i][keyName];

games[i]会产生(假设以前存在games[i].wiki = table[i].wiki')相同的结果,除了现在显然可以始终动态更改keyName的值以创建和读取不同的属性。

答案 1 :(得分:0)

我想我已经弄清楚了,我无法在这里进行测试,现在无法访问数据库服务器,但是我应该能够使用方括号(我刚刚学到的东西)来做到这一点。 https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/Basics#Bracket_notation