数码资讯
在JS实现简单的格式化函数实例代码
JS本地不提供一个方便的格式化功能,它看起来很困惑和难以与字符拼接阅读,它使用起来非常不方便。我觉得C #提供语法更好,如: 字符串(格式)(欢迎学习{ 0 }),{ 0 }是令人敬畏的,您将{ 1 } }! 这种顺序替换方式更清晰,在替换相同内容时可以省略重复参数。下面是js的简单实现版本(未经过
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
JS本地不提供一个方便的格式化功能,它看起来很困惑和难以与字符拼接阅读,它使用起来非常不方便。我觉得C #提供语法更好,如:
字符串(格式)(欢迎学习{ 0 }),{ 0 }是令人敬畏的,您将{ 1 } }!
这种顺序替换方式更清晰,在替换相同内容时可以省略重复参数。下面是js的简单实现版本(未经过严格测试)。
(函数(出口){)
exports.format =函数(){
var args = array.prototype.slice.call(参数),
sourcestr = args.shift();
功能execreplace(文本、置换、指标){
返回text.replace(new RegExp( {+指数+ }
}
返回args.reduce(execreplace,sourcestr);
}
(窗口。工具)window.utils | | } = { });
console.log(utils。格式(欢迎学习{ 0 }{ 0 }是可怕的,你会{ 1 }!;
关键是这个:
Args.reduce(execreplace,sourcestr);
这里我们使用数组的减函数。减少和reduceright新功能添加的ES5。该函数的参数是减少(回调,回调4,初值)和接收参数,即:
PreviousValue:
当穿越进入回调函数的第一时间,如果initivalvalue指定,initivalvalue将直接使用。如果未指定,则将使用数组的第一个元素。
该值的第二个和以后的遍历是前一个遍历返回的结果。
最后一次遍历返回的结果将是减函数的返回值。
当前项目的穿越电流:
下标:数组中当前项的下标。
数组:原始数组
在execreplace,先前交代的结果,作为每一个执行原来的替换字符串。当前项的索引用作替换的内容,然后依次遍历。最后,替换内容已经完成。
注:reduceright基本上是为减少功能相同,但它的遍历顺序是从右到左
字符串(格式)(欢迎学习{ 0 }),{ 0 }是令人敬畏的,您将{ 1 } }!
这种顺序替换方式更清晰,在替换相同内容时可以省略重复参数。下面是js的简单实现版本(未经过严格测试)。
(函数(出口){)
exports.format =函数(){
var args = array.prototype.slice.call(参数),
sourcestr = args.shift();
功能execreplace(文本、置换、指标){
返回text.replace(new RegExp( {+指数+ }
}
返回args.reduce(execreplace,sourcestr);
}
(窗口。工具)window.utils | | } = { });
console.log(utils。格式(欢迎学习{ 0 }{ 0 }是可怕的,你会{ 1 }!;
关键是这个:
Args.reduce(execreplace,sourcestr);
这里我们使用数组的减函数。减少和reduceright新功能添加的ES5。该函数的参数是减少(回调,回调4,初值)和接收参数,即:
PreviousValue:
当穿越进入回调函数的第一时间,如果initivalvalue指定,initivalvalue将直接使用。如果未指定,则将使用数组的第一个元素。
该值的第二个和以后的遍历是前一个遍历返回的结果。
最后一次遍历返回的结果将是减函数的返回值。
当前项目的穿越电流:
下标:数组中当前项的下标。
数组:原始数组
在execreplace,先前交代的结果,作为每一个执行原来的替换字符串。当前项的索引用作替换的内容,然后依次遍历。最后,替换内容已经完成。
注:reduceright基本上是为减少功能相同,但它的遍历顺序是从右到左
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。