【问题标题】:How can i concatenate in javascript? [duplicate]我如何在javascript中连接? [复制]
【发布时间】:2019-11-29 12:37:31
【问题描述】:

大家好,我是 javascript 新手。我如何连接下面的变量

 var name = 'test';
 var query = /^ name / ;

db.users.find('name':query);    

预期输出

query = /^ test/;

我想要不带双引号的查询,请有人帮助我继续前进

我试过这样

var query ='/^' +'name'+ '/';

但我得到的结果是双引号“/^ test/”。

仅供参考:我不想在外面使用双引号

提前致谢

【问题讨论】:

  • 什么是db.users.find
  • 试试这个var query =`'/^name/'`;
  • @Jamiec 据我所知db.users.find 只不过是 mongodb 查询
  • 查找名称查询。请忽略。
  • 它是相关的 - 因为也许有一种方法可以使用您正在使用的库对其进行参数化。即,您是否试图“重新发明轮子”?基本上,我认为这是一个 XY 问题!

标签: javascript


【解决方案1】:

您似乎正在尝试在 regular expression 文字中使用变量。我认为口译员不会理解这一点。但是,您可以将 string 传递给正则表达式构造函数,并且可以随意连接/插入字符串。

例如:

var name = 'test';
var query = new RegExp('^ ' + name);

或:

var name = 'test';
var query = new RegExp(`^ ${name}`);

【讨论】:

【解决方案2】:

您可以构造一个新的RegExp 对象,而不是使用/regex/g 语法:

var name = "test";
var re = new RegExp(name, "g");

【讨论】:

    猜你喜欢
    • 2021-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-29
    • 1970-01-01
    • 2018-06-10
    • 1970-01-01
    相关资源
    最近更新 更多