// 示例代码:使用自定义的 string.format 方法
// 定义一个简单的 string.format 函数
String.prototype.format = function (...args) {
return this.replace(/{(\d+)}/g, function (match, number) {
return typeof args[number] != 'undefined' ? args[number] : match;
});
};
// 使用示例
const message = "Hello, {0}! Welcome to {1}.";
const formattedMessage = message.format("Alice", "JavaScript World");
console.log(formattedMessage); // 输出: Hello, Alice! Welcome to JavaScript World.
定义 string.format 方法:我们扩展了 String.prototype,添加了一个名为 format 的方法。这个方法接受任意数量的参数,并将这些参数按顺序替换字符串中的 {0}, {1}, 等占位符。
正则表达式替换:在 format 方法中,我们使用正则表达式 /{(\d+)}/g 来匹配字符串中的占位符(例如 {0})。然后通过回调函数将匹配到的占位符替换为相应的参数值。
示例用法:我们定义了一个包含占位符的字符串 message,并调用 format 方法传入参数 "Alice" 和 "JavaScript World",最终输出格式化后的字符串。
处理未定义的占位符:如果传入的参数数量不足以替换所有的占位符,未替换的占位符将保持原样。
上一篇:js 年月日转时间戳
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站