1250730
感觉奇怪, 这个难道也是转义吗?

➤➤ node -v
v0.10.33
感觉奇怪, 这个难道也是转义吗?

➤➤ node -v
v0.10.33
@haio 所以我就猜测会不会跟这个有关 -。 -
@xadillax 哈哈,至少 JS 还支持单独使用 %
@haio @alsotang 反正 C 里面的 sprintf 里面输出 % 这个字符的话,要么是用 %c 然后以 % 填充,要么在占位的那个字符串中以 %% 表示。
以前在写游戏的时候踩过这个坑。
代码中 寻找百分号 的注释就是为了破了这个坑。
@xadillax util.format 这个函数说多脑残就有多脑残啊。。有时候想用点 sprintf 的功能,就只能眼睁睁看着 format 这个残废。
@haio 偏偏 Chrome 上可以输出, 还以为是 bug 了.
确实, 我就是为了在生成 log 时产生个特殊字符才遇到这个情况的.
也许是以后要支持 %d 之类的语法呢?
@jiyinyiyong 翻了下以前的文档
`%%` - single percent sign (`'%'`). This does not consume an argument.
现在文档变成了
`%` - single percent sign ('%'). This does not consume an argument.
也没解释为什么%%为什么返回%了,可能觉得不应该存在%%这样的用法吧,这种用法确实也没什么意义。。
@haio 这么说是为了支持 %s 这类语法而进行的转义了... 可惜跟浏览器不一致
https://github.com/iojs/io.js/blob/v1.x/lib/util.js#L17 源码是这样的
if (x === '%%') return '%';
所以就两个%就变成一个%了