代码之家  ›  专栏  ›  技术社区  ›  Nicola

JavaScript+MySQL:结果中使用字段作为参数

  •  0
  • Nicola  · 技术社区  · 6 年前

    我对JavaScript很陌生,我有以下问题: 我有一个Node.JS服务器,webclient可以在上面连接和执行函数。一个功能是查看MySQL数据库并收集信息。

    查询完成得很好,我获得了正确的原始信息,例如: enter image description here

    这是我的代码: enter image description here

    因此,我使用fields(fields[0].name=Count_0)变量正确地获取列名,并且能够使用结果(result[0].Count_0=Gray)获得正确的值。

    但是,我无法合并这两行,以便在循环中使用类似的方法创建颜色列表:result[0].fields[0].name=Gray

    有没有更简单的方法来做这个?

    谢谢,

    尼古拉。

    2 回复  |  直到 6 年前
        1
  •  1
  •   mrshl    6 年前

    在Javascript中,可以使用[]运算符访问对象中的变量命名属性。

    而不是使用 result[0].fields[0].name ,使用

    result[0][fields[0].name]
    

    在访问不存在的属性时,不会得到任何运行时错误,因此您会想在使用另一个值之前检查该值是否未定义。

        2
  •  1
  •   samee    6 年前

    你好像想弄到颜色。如果是的话,你可以通过这个得到颜色

    let color = result[0][fields[0].name];
    

    其思想是使用字段[0].name作为结果[0]的键。

    这是上述单线的故障。

    let key = fields[0].name;
    let color = result[0][key];