微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

字符串连接object.values,其中object.key等于条件

如何解决字符串连接object.values,其中object.key等于条件

我有一个需要加入sql条件字符串的对象。 这是对象:

   qFilters= {EMPRESA: "EMPRESA='DEMO'",QTD: "QTD IS NOT NULL "," ": "OR MONTANTE IS NOT NULL"}

这是字符串结果:

whereStr += Object.values(qFilters).join(" AND ");

问题是我只需要加入具有属性名称的人。最后一个属性没有名字,所以我不需要“ AND”。

如果属性没有名称,请跳过“ AND”,仅使用该值。

谢谢。

解决方法

这是一种可行的方法,但实际上,您可能应该重新考虑整个设计。当然,有更好的方法可以完成您想要做的事情。

{}

,

您可以使用Object.keys来过滤密钥类型:

const qFilters= {EMPRESA: "EMPRESA='DEMO'",QTD: "QTD IS NOT NULL "," ": "OR MONTANTE IS NOT NULL"}

const res = Object.keys(qFilters).reduce((query,key) => {
  if(!!key.trim()){
    return [query,qFilters[key]].join(' AND ');
  } else {
    return [query,qFilters[key]].join(' ');
  }
});

console.log(res)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。