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

json字段模糊查询

在编程中,经常需要根据json字段进行查询。但有时候需要进行模糊查询,即根据部分字段来查找符合条件的项。下面我们将介绍如何使用json字段模糊查询

示例数据:
[
  {
    "name": "张三","age": 20,"info": {
      "location": "北京","hobby": "篮球"
    }
  },{
    "name": "李四","age": 25,"info": {
      "location": "上海","hobby": "游泳"
    }
  },{
    "name": "王五","age": 30,"info": {
      "location": "广州","hobby": "足球"
    }
  }
]

模糊查询查询hobby包含“球”的项

json字段模糊查询

首先,我们可以使用filter()函数来对json数组进行过滤。

const data = [
  {
    "name": "张三",// ...
];

const result = data.filter(item => {
  const info = item.info;
  if(info !== undefined) {
    const hobby = info.hobby;
    if(hobby !== undefined && hobby.includes('球')){
      return true;
    }
  }
  return false;
});

console.log(result);

// 输出:[
//   {
//     "name": "张三",//     "age": 20,//     "info": {
//       "location": "北京",//       "hobby": "篮球"
//     }
//   },//   {
//     "name": "王五",//     "age": 30,//     "info": {
//       "location": "广州",//       "hobby": "足球"
//     }
//   }
// ]

通过使用filter()函数和includes()方法,我们可以在json数组中查询符合条件的项。此外,我们还可以使用正则表达式进行模糊查询,更加灵活。

// 模糊查询查询location包含“北”的项

const result = data.filter(item => {
  const info = item.info;
  if(info !== undefined) {
    const location = info.location;
    if(location !== undefined && /北/.test(location)){
      return true;
    }
  }
  return false;
});

console.log(result);

// 输出: [
//   {
//     "name": "张三",//       "hobby": "篮球"
//     }
//   }
// ]

以上是使用json字段进行模糊查询的介绍,希望对大家在编程中有所帮助。

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

相关推荐