【发布时间】:2015-09-11 11:12:48
【问题描述】:
我知道console.log 至少支持来自 C 的 printf 的一些基本功能,但我很好奇有一种方法可以利用 console.log 的实现来创建类似于 @ 的东西987654326@。我知道你不能简单地使用.bind 或.apply,因为console.log 实际上并没有返回字符串,那么有没有办法解决这个问题?
如果这实际上不可能,是否还有其他一些鲜为人知的原生实现,距离在 JavaScript 中实现 sprintf 仅几行代码?
对于那些不知道sprintf 到底是什么的人,here is some documentation from tutorialspoint。我正在寻找的示例用法如下:
var string1 = sprintf("Hello, %s!", "world");
var string2 = sprintf("The answer to everything is %d.", 42);
【问题讨论】:
-
我发现 console.log github.com/joyent/node/blob/master/lib/console.js 的实现似乎没有办法在任何地方插入代码。最好的办法是复制格式函数并自己构建字符串。
-
好的,谢谢您的意见。
标签: javascript binding printf