如果是,那是什么?
我不介意它是否涉及使用外部库。
最佳答案
这是我的 super 简单的解决方案,可以处理 %s
、%d
和 %04d
(更改 4
在任何数字上)
function sprintf(str) {
var args = arguments, i = 1;
return str.replace(/%(s|d|0\d+d)/g, function (x, type) {
var value = args[i++];
switch (type) {
case 's': return value;
case 'd': return parseInt(value, 10);
default:
value = String(parseInt(value, 10));
var n = Number(type.slice(1, -1));
return '0'.repeat(n).slice(value.length) + value;
}
});
}
关于javascript - JavaScript 中是否有等效的 sprintf?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2405425/