js中的string.format函数代码


Posted in Javascript onAugust 11, 2020

源于C#中的string.Format()

String.prototype.format = function(args) {
  if (arguments.length > 0) {
    var result = this;
    if (arguments.length == 1 && typeof(args) == "object") {
      for (var key in args) {
        var reg = new RegExp("({" + key + "})", "g");
        result = result.replace(reg, args[key]);
      }
    } else {
      for (var i = 0; i < arguments.length; i++) {
        if (arguments[i] == undefined) {
          return "";
        } else {
          var reg = new RegExp("({[" + i + "]})", "g");
          result = result.replace(reg, arguments[i]);
        }
      }
    }
    return result;
  } else {
    return this;
  }
}

例:

//两种调用方式
var template1="我是{0},今年{1}了";
var template2="我是{name},今年{age}了";
var result1=template1.format("loogn",22);
var result2=template1.format({name:"loogn",age:22});
//两个结果都是"我是loogn,今年22了"

下面分享一个作为字符串扩展的写法

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
};

以上就是js中的string.format函数代码的详细内容,更多关于js中的string.format的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
JavaScript Konami Code 实现代码
Jul 29 Javascript
jQuery提交表单ajax查询实例代码
Oct 07 Javascript
jquery中push()的用法(数组添加元素)
Nov 25 Javascript
微信内置浏览器私有接口WeixinJSBridge介绍
May 25 Javascript
基于JavaScript的操作系统你听说过吗?
Jan 28 Javascript
CKEditor无法验证的解决方案(js验证+jQuery Validate验证)
May 09 Javascript
Angular.JS利用ng-disabled属性和ng-model实现禁用button效果
Apr 05 Javascript
在vue中使用setInterval的方法示例
Apr 16 Javascript
浅谈redux, koa, express 中间件实现对比解析
May 23 Javascript
解决IOS端微信H5页面软键盘弹起后页面下方留白的问题
Jun 05 Javascript
JS字符串与二进制的相互转化实例代码详解
Jun 28 Javascript
JS实现悬浮球只在一侧滑动并且是横屏状态下
Aug 19 Javascript
关于html+ashx开发中几个问题的解决方法
Jul 18 #Javascript
TreeView 用法(有代码)(asp.net)
Jul 15 #Javascript
基于jquery实现的鼠标滑过按钮改变背景图片
Jul 15 #Javascript
jquery 结合C#后台的数组对文章的关键字自动添加链接的代码
Jul 15 #Javascript
js实现addClass,removeClass,hasClass的函数代码
Jul 13 #Javascript
js下将字符串当函数执行的方法
Jul 13 #Javascript
JS高级笔记
Jul 13 #Javascript
You might like
为什么夜间收到的中波电台比白天多
2021/03/01 无线电
如何冲泡挂耳包咖啡?技巧是什么
2021/03/04 冲泡冲煮
提升PHP速度全攻略
2006/10/09 PHP
优化使用mysql存储session的php代码
2008/01/10 PHP
php 异常处理实现代码
2009/03/10 PHP
Zend Studio使用技巧两则
2016/04/01 PHP
PHP检测链接是否存在的代码实例分享
2016/05/06 PHP
微信公众号开发之获取位置信息php代码
2018/06/13 PHP
PHP示例演示发送邮件给某个邮箱
2019/04/03 PHP
PHP code 验证码生成类定义和简单使用示例
2020/05/27 PHP
浅析PHP echo 和 print 语句
2020/06/30 PHP
如何解决Jquery库及其他库之间的$命名冲突
2013/09/15 Javascript
javascript实现消灭星星小游戏简单版
2016/11/15 Javascript
利用jQuery解析获取JSON数据
2017/04/08 jQuery
原生JS实现烟花效果
2020/03/10 Javascript
[42:50]NB vs VP 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python通过yield实现数组全排列的方法
2015/03/18 Python
学习python类方法与对象方法
2016/03/15 Python
Python中static相关知识小结
2018/01/02 Python
python 将列表中的字符串连接成一个长路径的方法
2018/10/23 Python
解决安装pycharm后不能执行python脚本的问题
2019/01/19 Python
实例讲解Python脚本成为Windows中运行的exe文件
2019/01/24 Python
python yield关键词案例测试
2019/10/15 Python
Python实现自动装机功能案例分析
2020/10/22 Python
使用Python获取爱奇艺电视剧弹幕数据的示例代码
2021/01/12 Python
美国休闲服装品牌:J.Crew Factory
2017/03/04 全球购物
匡威比利时官网:Converse Belgium
2017/04/13 全球购物
Vilebrequin欧洲官网:法国豪华泳装品牌(男士沙滩裤)
2018/04/14 全球购物
ALDO加拿大官网:加拿大女鞋品牌
2018/12/22 全球购物
瑞士网球商店:Tennis-Point
2020/03/12 全球购物
岗位职责范本
2013/11/23 职场文书
家庭教育先进个人事迹材料
2014/01/24 职场文书
构建高效课堂实施方案
2014/03/13 职场文书
企业法人代表任命书
2014/06/06 职场文书
英语专业自荐书
2014/06/13 职场文书
《月光曲》教学反思
2016/02/16 职场文书