C# の string.format 関数は多くの場所で使用されるため、js を使用して単純なバージョンを実装しました。
次のようにコードをコピーします。
String.format = 関数 ()
{
var formatStr = 引数[0];
if (typeof formatStr === 'string' )
{
var パターン、
長さ = 引数.長さ;
for ( var i = 1; i < 長さ; i++ )
{
pattern = new RegExp( '//{' + ( i - 1 ) + '//}', 'g' );
formatStr = formatStr.replace( パターン, 引数[i] );
}
} それ以外
{
formatStr = '';
}
formatStr を返します。
};
上記のコードは静的メソッド形式を JavaScript String クラスに追加します。その使用法は C# の string.format とまったく同じです。テストは次のとおりです。
次のようにコードをコピーします。
String.format('http://wcf.open.a.com/blog/sitehome/paged/{0}/{1}',1,20)
出力: 「http://wcf.open.a.com/blog/sitehome/paged/1/20」
次のようにコードをコピーします。
String.format('{0}+{0}+{1}={2}',1,2,1+1+2)
出力:「1+1+2=4」
次のようにコードをコピーします。
String.format({name:'leonwang'},'hello,world')
出力: ""
最初のパラメータが文字列型でない場合は、それ以上の処理は行わずに空の文字列が返されます。