Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Javascript对象中创建重复键以匹配MongoDB多搜索字符串的规则?_Javascript_Mongodb - Fatal编程技术网

如何在Javascript对象中创建重复键以匹配MongoDB多搜索字符串的规则?

如何在Javascript对象中创建重复键以匹配MongoDB多搜索字符串的规则?,javascript,mongodb,Javascript,Mongodb,我尝试使用MongoDB操作多个搜索字符串的搜索 MongoDB上的多搜索字符串规则 db.meals.find({mealName: /fish/, mealName: /rice/, mealName: /spicy/}) 我的挑战是Javascript中的对象不能在同一个对象中具有相同的键 我试着这样做: const str = "fish rice spicy"; const transform = (searchInput) => { const sea

我尝试使用MongoDB操作多个搜索字符串的搜索

MongoDB上的多搜索字符串规则

db.meals.find({mealName: /fish/, mealName: /rice/, mealName: /spicy/})
我的挑战是Javascript中的对象不能在同一个对象中具有相同的键

我试着这样做:

const str = "fish rice spicy";
const transform = (searchInput) => {
  const searchField = {}
  let searchArray = searchInput.split(" ");
  searchArray = searchArray.map((item)=>{
    const fixKey = "mealName";
    searchField[fixKey] = new RegExp(item);
  })
  return searchField;
}
console.log(transform(str)); // {mealName: /spicy/}
在这种情况下


如何在Javascript中符合MongoDB多重搜索字符串的格式?

只需像这样使用
MongoDB
$in

const strArray = "fish rice spicy".split(" ");
db.meals.find({ mealName: {$in: strArray } })
它将获取
mealName
与任何
strArray
项匹配的所有记录。

您是指$还是:?