JavaScript 相当于 printf/String.Format

2024-04-11

我正在寻找一个与 C/PHP 相当的 JavaScriptprintf()或者对于 C#/Java 程序员来说,String.Format() (IFormatProvider对于.NET)。

我的基本要求是目前数字的千位分隔符格式,但处理大量组合(包括日期)的格式会很好。

我意识到微软的Ajax http://en.wikipedia.org/wiki/Ajax_%28programming%29库提供了一个版本String.Format(),但我们不想要该框架的全部开销。


当前的 JavaScript

从 ES6 开始,你可以使用模板字符串:

let soMany = 10;
console.log(`This is ${soMany} times easier!`);
// "This is 10 times easier!"

参见金氏answer https://stackoverflow.com/a/32202320/2430448请参阅下文了解详细信息。


较旧的答案

Try JavaScript 的 sprintf() https://github.com/alexei/sprintf.js.


如果你确实想自己做一个简单的格式化方法,不要连续进行替换,而是同时进行。

因为当先前替换的替换字符串也包含如下格式序列时,提到的大多数其他提案都会失败:

"{0}{1}".format("{1}", "{0}")

通常你会期望输出是{1}{0}但实际输出是{1}{1}。所以像这样同时进行替换恐惧噬菌体的建议 https://stackoverflow.com/questions/610406/javascript-printf-string-format/4673436#4673436.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JavaScript 相当于 printf/String.Format 的相关文章

随机推荐