{ username: "jdoe" }-6ren">
gpt4 book ai didi

javascript - 如何使用 javascript "unstringify"数组中的值?

转载 作者:行者123 更新时间:2023-12-03 11:41:50 26 4
gpt4 key购买 nike

我正在为 Mongo 数据库构建动态搜索查询。

简而言之,与问题没有直接关系......它看起来像这样:

var searchCriteria = {}; <-- start with empty object    

return db.users.find(searchCriteria,
{ sort: { username: 1 }
});

searchCriteria 的值来自搜索表单,基本上如下所示:

var filter = $(form).find('select[name=filter]').val();
var query = $(form).find('[name=query]').val();

searchCriteria[filter] = query <-- Using a dynamic key

表单的输出示例:

console.log(searchCriteria);
>> { username: "jdoe" }

这是我的挂断。我需要在 searchCriteria 中“取消字符串化”查询,并将其变成这样:

>> { username: /jdoe/ }

除其他外,我尝试过替换,但它始终以字符串值结束。我需要该格式的/query/来进行 Mongo 查找查询。

有什么建议吗?谢谢:)

最佳答案

您可以使用new Regex(string)轻松将字符串转换为RegExp对象。

请注意,如果您传递用户输入,这肯定会在某个地方存在一些安全问题,但是 new RegExp 不应允许任何任意 JS 运行,但它仍然可能使您的代码崩溃通过成为无效的正则表达式。

Source (MDN)

关于javascript - 如何使用 javascript "unstringify"数组中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26242362/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com