<!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 - 男

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

  1. 前端 自定义format函数

    为字符串创建format方法,用于字符串格式化  {# 前端没有字符串占位符%s的替代方法,以下是自定义字符串替换的方法,以后前端拓展方法都可以使用下面的形式 #} String.prototype. ...

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

    python中format函数用于字符串的格式化 通过关键字 print('{名字}今天{动作}'.format(名字='陈某某',动作='拍视频'))#通过关键字 grade = {'name' : ...

  3. string.Format对C#字符串格式化[转]

    string.Format对C#字符串格式化 String.Format 方法的几种定义: String.Format (String, Object) 将指定的 String 中的格式项替换为指定的 ...

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

    语言国际化要求,开发上要求Oracle数据库SQL中对应的返回信息-Message,实现一个通用函数调用,比如:提示信息内容:条码123456当前工站在FCT!”,即通用的信息内容格式化标准为:“条码 ...

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

    转自:http://blog.csdn.net/samsone/article/details/7556781 1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) str ...

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

    String.Format 方法的几种定义: String.Format (String, Object) 将指定的 String 中的格式项替换为指定的 Object 实例的值的文本等效项.Stri ...

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

    1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) string.Format("{0:C}",0.2) 结果为:¥0.20 (英文操作系统结果:$0 ...

  8. 【C#学习笔记】string.Format对C#字符串格式化

    文章转自:CSDN   http://blog.csdn.net/samsone/article/details/7556781 1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格 ...

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

    .在globals.h 中定义一个函数ReplaceStr,实现字符串的替换: int ReplaceStr(char* sSrc, char* sMatchStr, char* sReplaceSt ...

随机推荐

  1. Django--filter()-字段查找(双下划线的使用详解)

    Django--filter()-字段查找(双下划线的使用详解) 在了解django中的字段查找的同时,让我们先熟悉一下比较符: 大于--gt-(greater than) 小于--lt-(less ...

  2. mybatis Interceptor拦截器代码详解

    mybatis官方定义:MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis ...

  3. DevExpress之TreeList控件用作导航使用说明

    最近项目用的是DEV界面框架, 由于各控件属性太多,以免遗忘.所以做个笔录.也方便有这方面需求的网友交流学习.下面开始讲解具体实现步骤. 一.先布局,设置相关属性. 1.首先到工具箱拖一个 TreeL ...

  4. JAVA同步锁机制 wait() notify() notifyAll()

    wait() notify() notifyAll() 这3个方法用于协调多个线程对共享数据的存取,所以必须在synchronized语句块中使用. wait() 必须在synchronized函数或 ...

  5. Git设置旧邮箱与现邮箱不一致问题

    设置名字和邮箱git config user.name 'lhr' git config user.email 'lhr@qq.com' 工程根目录创建email.sh文件粘贴以下代码 #!/bin/ ...

  6. static易错点

    package com.juemuren.Error; /** * static关键字的易错点 */class SuperClass{    static{        System.out.pri ...

  7. day-02

    昨天吧 需要写一个财务管理制度 很是伤脑 我发现一旦用脑过度 就会极其想吃零食 所以 昨天吃了些零食 说这个呢 无非是想说 我昨天学习python的时间很少 而且昨晚安装python软件也出现问题了 ...

  8. MySQL数据库语句

    一 . 常用mysql命令行命令        1 .启动MYSQL服务   net start mysql 停止MYSQL服务   net stop mysql 2 . netstat –na | ...

  9. FINS/TCP_OMRON(1)

    使用FINS/ TCP与欧姆龙PLC沟通 可参考下列教学 using System.Net; using System.Net.Sockets; 上面必须使用; IPAddress ipAddr = ...

  10. linux在tomcat中指定jdk

    setclasspath.sh和catalina.sh中写入 export JAVA_HOME=/qbtapp/jdk-8u111-linux-i586/jdk1.8.0_111export JRE_ ...