为JavaScript添加String.Format方法

作者:异步漫步

时间:2026-10-24

浏览:569

本文介绍如何在JavaScript中为String对象添加Format方法,通过正则表达式实现类似C#的{0}、{1}占位符替换功能,提供完整的扩展代码及调用示例,帮助开发者简化字符串拼接操作。

文章目录

JavaScript String.Format 实现

核心代码


<script type='text/javascript'>

String.format = function() {
var s = arguments[0];
for (var i = 0; i < arguments.length - 1; i++) {
var reg = new RegExp("\\{" + i + "\\}", "gm");
s = s.replace(reg, arguments[i + 1]);
}
return s;
}

function stringFormat() {
var s = arguments[0];
for (var i = 0; i < arguments.length - 1; i++) {
var reg = new RegExp("\\{" + i + "\\}", "gm");
s = s.replace(reg, arguments[i + 1]);
}
return s;
}

--用法

var name='jb51.net';
var greeting1 = String.format("Hi--1, {0}, '{1}',this is a '{0}'! ", name, 'uuu');
var greeting2 = stringFormat("Hi--2, {0}, '{1}',this is a '{0}'! ", name, 'uuu');
alert(greeting1 + '\r\n' + greeting2);
</script>

将以下代码直接作为字符串对象的扩展方法使用


String.format = function() {
  for (var a = arguments[0], b = 1; b < arguments.length; b++) a = a.replace(RegExp("\\{" + (b - 1) + "\\}", "ig"), arguments[b]);
  return a
};

调用示例:String.format('Hello. My name is {0} {1}.', firstName, lastName);

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章