var api = "/self/{code}/my/{id}";
var code = "GHUYFUYI";
var id = 12346;
嗨,我是 Jquery 的新手...任何帮助表示赞赏。
使用上面的 API 路径数据,我们如何使用 JQuery 生成如下所示的 URL?
提前致谢....
结果:
/self/GHUYFUYI/my/12346
var api = "/self/{code}/my/{id}";
var code = "GHUYFUYI";
var id = 12346;
嗨,我是 Jquery 的新手...任何帮助表示赞赏。
使用上面的 API 路径数据,我们如何使用 JQuery 生成如下所示的 URL?
提前致谢....
结果:
/self/GHUYFUYI/my/12346
var api = "/self/{0}/my/{1}";
var array = new Array("GHUYFUYI",12345);
for (var i = 0; i < array.length; i++) {
api = api.replace("{"+i+"}",arr[i]);
}
cosole.log(api);
你可以做这样的事情。
为此,您不需要 jQuery。只是普通的旧Javascript...
var api = "/self/{code}/my/{id}";
var code = "GHUYFUYI";
var id = 12346;
api = api.replace("{code}", code).replace("{id}", id);
你最好的选择是使用正则表达式。这是一个简单的例子:
var api = "/self/{code}/my/{id}";
var code = "GHUYFUYI";
var id = 12346;
api = api.replace(/{code}/, code).replace(/{id}/, id);
您可以使用 javascript 函数 Replace ( http://www.w3schools.com/jsref/jsref_replace.asp )
api = api.replace("{code}", code).replace("{id}", id);
增强字符串原型
if (!String.prototype.format) {
String.prototype.format = function() {
var str = this.toString();
if (!arguments.length)
return str;
var args = typeof arguments[0],
args = (("string" == args || "number" == args) ? arguments : arguments[0]);
for (arg in args)
str = str.replace(RegExp("\\{" + arg + "\\}", "gi"), args[arg]);
return str;
}
}
用法
var formatData = {
code:"GHUYFUYI",
id:12346
};
var api = "/self/{code}/my/{id}".format(formatData);
致谢:加布里埃尔·纳米亚斯