Javascript 将json文件与POST详细信息和返回值进行比较

Javascript 将json文件与POST详细信息和返回值进行比较,javascript,node.js,json,Javascript,Node.js,Json,将node.js中的HTTP Post正文与JSON文件进行比较,如果存在匹配项,请提供JSON文件中的详细信息 我尝试了几个不同的函数,但不确定我的JSON文件的格式是否不适合我的需要,或者我是否还缺少其他东西 我已尝试使用此函数进行检查: function checkForValue(json, value) { for (lic_key in json) { if (typeof (json[lic_key]) === "object") { retur

将node.js中的HTTP Post正文与JSON文件进行比较,如果存在匹配项,请提供JSON文件中的详细信息

我尝试了几个不同的函数,但不确定我的JSON文件的格式是否不适合我的需要,或者我是否还缺少其他东西

我已尝试使用此函数进行检查:

function checkForValue(json, value) {
  for (lic_key in json) {
      if (typeof (json[lic_key]) === "object") {
          return checkForValue(json[lic_key], value);
      } else if (json[lic_key] === value) {
          //new requirement - return whole object. 
          console.log("here's the key:")
          console.log(json);
          return json;

      }
  }
  return false;
}
这也是我的JSON文件

[
  {"lic_key": "5d6d0916c810c639cced1da7",
    "meta":
      {
        "exp_date": "09/23/2019"},
        "organization": "Westar"
      },
    {
      "lic_key": "5d6d091601edbefc2c7f5af6",
      "meta":
      {
        "exp_date": "09/23/2019"}
      },
    {
      "lic_key": "5d6d0916f89d16775a54473d",
      "meta":
      {
        "exp_date": "09/23/2019"}
      },
    {
      "lic_key": "5d6d0916668f82f5b3e1a667",
      "meta":
      {
        "exp_date": "09/23/2019"}
      },
    {
      "lic_key": "5d6d0916012065c066976e5e",
      "meta":
      {
        "exp_date": "09/23/2019"}
      }
  ]

我希望函数返回lic_键与传递到函数中的第二个变量相匹配的对象。第一个变量是从文件加载的JSON对象。

您可以使用
Array.filter
。参考-

const jsonArray=[{
“lic_键”:“5d6d0916c810c639cced1da7”,
“元”:{
“出口日期”:“2019年9月23日”
},
“组织机构”:“Westar”
},
{
“lic_键”:“5d6d091601edbefc2c7f5af6”,
“元”:{
“出口日期”:“2019年9月23日”
}
},
{
“lic_键”:“5d6d0916f89d16775a54473d”,
“元”:{
“出口日期”:“2019年9月23日”
}
},
{
“lic_键”:“5d6d0916668f82f5b3e1a667”,
“元”:{
“出口日期”:“2019年9月23日”
}
},
{
“lic_键”:“5d6d0916012065c066976e5e”,
“元”:{
“出口日期”:“2019年9月23日”
}
}
];
让findData=(json,value)=>{
const filtered=json.filter(j=>j.lic_key==value);
返回(已过滤和已过滤[0])|{};
};
日志(findData(jsonArray,'5d6d0916012065c066976e5e')可能重复的//
[
  {"lic_key": "5d6d0916c810c639cced1da7",
    "meta":
      {
        "exp_date": "09/23/2019"},
        "organization": "Westar"
      },
    {
      "lic_key": "5d6d091601edbefc2c7f5af6",
      "meta":
      {
        "exp_date": "09/23/2019"}
      },
    {
      "lic_key": "5d6d0916f89d16775a54473d",
      "meta":
      {
        "exp_date": "09/23/2019"}
      },
    {
      "lic_key": "5d6d0916668f82f5b3e1a667",
      "meta":
      {
        "exp_date": "09/23/2019"}
      },
    {
      "lic_key": "5d6d0916012065c066976e5e",
      "meta":
      {
        "exp_date": "09/23/2019"}
      }
  ]