前端自定义format函数,做字符串格式化功能

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>自定义format函数,做字符串格式化功能</title>
</head>
<body>
    <script>
        String.prototype.format = function (kwargs) {              //自定义定义format方法,这样字符串就多了一个自定义format方法kwargs接收字符串传来的字典
            //this就是当前调用这个方法的对象xixi。this= "xixi: {age} - {gender}"
            // kwargs={‘age‘:18,‘gender‘: ‘男‘}
            var ret = this.replace(/\{(\w+)\}/g,function (km,m) {  //replace通过正则匹配this里面以{}里面的都替换,km是匹配成功的值{age}和{gender},m是在km基础上把里面的分组提取到是age和gender,ret就是最后被返回的值
                return kwargs[m];                                  //拿到18和男
            });
            return ret;                                            //如果在这个函数有return的话匹配的位置就会被替换什么
        };

        //需要格式化的函数
        var v = "xixi: {age} - {gender}";                          //v=xixi: {age} - {gender}要把{age} - {gender}格式化到{‘age‘:18,‘gender‘: ‘男‘}的指定位置
        var result = v.format({‘age‘:18,‘gender‘: ‘男‘});          //v.执行自定义format方法传一个字典{‘age‘:18,‘gender‘: ‘男‘}进去,result就是格式化完成之后的值
        console.log(result);                                       //xixi: 18 - 男
    </script>
</body>
</html>

格式化后:
xixi: 18 - 男

原文地址:https://www.cnblogs.com/xixi18/p/10682718.html

时间: 2024-11-05 17:31:51

前端自定义format函数,做字符串格式化功能的相关文章

python中format函数用于字符串的格式化

python中format函数用于字符串的格式化 通过关键字 print('{名字}今天{动作}'.format(名字='陈某某',动作='拍视频'))#通过关键字 grade = {'name' : '陈某某', 'fenshu': '59'} print('{name}电工考了{fenshu}'.format(**grade))#通过关键字,可用字典当关键字传入值时,在字典前加**即可 通过位置 print('{1}今天{0}'.format('拍视频','陈某某'))#通过位置 print

通过Oracle函数SQL实现C# String.Format字符串格式化功能

语言国际化要求,开发上要求Oracle数据库SQL中对应的返回信息-Message,实现一个通用函数调用,比如:提示信息内容:条码123456当前工站在FCT!”,即通用的信息内容格式化标准为:“条码{0}当前工站在{1}!”. 在C#代码中可以通过String.Format函数占位符替换的模式实现字符串格式化输出,Oracle中暂无此函数,所以可参考String.Format反编译的相应的逻辑去实现即可: 信息内容中多个参数,是以占位符{}来表示,多个参数则用数组:通过自定义数组类型(即Tab

【转】string.Format对C#字符串格式化

[转]http://blog.csdn.net/samsone/article/details/7556781 1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) string.Format("{0:C}",0.2) 结果为:¥0.20 (英文操作系统结果:$0.20) 默认格式化小数点后面保留两位小数,如果需要保留一位或者更多,可以指定位数string.Format("{0:C1}",23.15) 结果为:¥23.2 (截取会自动四舍

string.Format对C#字符串格式化

String.Format 方法的几种定义: String.Format (String, Object) 将指定的 String 中的格式项替换为指定的 Object 实例的值的文本等效项.String.Format (String, Object[]) 将指定 String 中的格式项替换为指定数组中相应 Object 实例的值的文本等效项.String.Format (IFormatProvider, String, Object[]) 将指定 String 中的格式项替换为指定数组中相应

LoadRunner中自定义C函数实现字符串替换

1.在globals.h 中定义一个函数ReplaceStr,实现字符串的替换: int ReplaceStr(char* sSrc, char* sMatchStr, char* sReplaceStr) { int StringLen; char caNewString[1024]; char* findPos; merc_timer_handle_t timer_ReplaceStr = lr_start_timer(); lr_debug_message(LR_MSG_CLASS_EXT

C#详解format函数,各种格式化

一.String Format for Double Digits after decimal point This example formats double to string with fixed number of decimal places. For two decimal places use pattern „0.00“. If a float number has less decimal places, the rest digits on the right will b

python学习(4)--字符串格式化之format()方法

一.格式化字符串的函数 str.format()增强了字符串格式化的功能.通过 {} 和 : 来代替以前的 % . 其中format 函数可以接受不限个参数,位置可以不按顺序. str = "{date}.{filename}.{func_name}.{msg}".format( date = "2018-10-07", # 时间 filename = "test_farmat", # 文件名 msg = "content"

Format 函数示例

Format 函数示例本示例显示用 Format 函数做格式化输出的不同用法.对于日期分隔号(/),时间分隔号(:),以及 AM/ PM 等文本而言,其真正的显示格式会因计算机上的国际标准不同而有所差异.在开发阶段,日期与时间是以短日期的格式,配合代码的国际标准来显示的.而在运行时,短日期则是根据系统的国际标准而定,而系统的国际标准和代码的国际标准可能并不相同.本示例中是假设国际标准为 English/United States. MyTime 及 MyDate 在开发环境下,使用系统的短日期设

python-day5-装饰器补充、模块、字符串格式化和序列化

装饰器补充之双层装饰器 1 user_info = {} 2 3 4 def check_login(func): 5 def inner(*args, **kwargs): 6 if user_info.get('is_login', None): 7 ret = func(*args, **kwargs) 8 return ret 9 else: 10 print('请先登录...') 11 return inner 12 13 14 def check_user_type(func): 1