如何用对应变量替换网址格式?

时间:2018-07-10 07:18:19

标签: javascript regex

const userId = 123; const userName = 'john' let url = '/foo/:userId/:userName' 如何生成这样的结果字符串/foo/123/john 似乎str.replace(reg,callback)无效

2 个答案:

答案 0 :(得分:0)

replace(reg, callback)肯定有效,您可能未正确使用它。

这里是一个例子:

const userId = 123;
const userName = 'john'
const params = {userId, userName}
let url = '/foo/:userId/:userName'
url = url.replace(/:[^\/]+/g, (g) => (params[g.substr(1)]))
console.log(url)

答案 1 :(得分:0)

如果您的代码允许您这样做,您也可以使用字符串插值

def