一尘不染

JavaScript等同于printf / String.Format

javascript

我正在寻找一种等效于C / PHP printf()或C#/
Java程序员String.Format()IFormatProvider适用于.NET)的JavaScript 。

我的基本要求是现在使用数字的千位分隔符格式,但是可以处理很多组合(包括日期)的东西会很好。

我意识到Microsoft的Ajax库提供了的版本String.Format(),但我们不希望该框架的全部开销。


阅读 458

收藏
2020-04-22

共1个答案

一尘不染

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

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

除此以外:

尝试sprintf()for JavaScript。


如果您真的想自己做一个简单的格式化方法,请不要先后进行替换,而要同时进行。

因为前面提到的其他替换提议中的大多数其他提议都失败了,而先前的替换字符串也包含这样的格式序列:

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

通常,您希望输出为,{1}{0}但实际输出为{1}{1}

2020-04-22