我有Javascript API,用户通过URL调用它们。我可能需要更换网址的某些部分,例如他们可能会使用上传网址调用我的ajax照片上传API:
http://www.example.com/photos/upload/${username};jsessionid=l2k34523
然后我需要在我的代码上传照片时发布到该网址,替换$ {username}。我可以告诉他们如何在URL中格式化该用户名变量,但我必须允许他们插入这样的变量。
是否有一个好的Javascript或jQuery库可以轻松替换上面的变量?
答案 0 :(得分:0)
一个简单的format
函数可以帮到你......
// add String prototype format function if it doesn't exist yet
if (jQuery.isFunction(String.prototype.format) === false)
{
String.prototype.format = function () {
var s = this;
var i = arguments.length;
while (i--)
{
s = s.replace(new RegExp('\\{' + i + '\\}', 'gim'), arguments[i]);
}
return s;
};
}
因此您可以轻松地将其用作:
".../photos/upload/{0};jsessionid=l2k34523".format("JohnDoe");
或多个变量:
".../photos/upload/{0};jsessionid={1}".format("JohnDoe", "l2k34523");