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 相关文章推荐
createElement动态创建HTML对象脚本代码
Nov 24 Javascript
用js获取电脑信息(是使用与IE浏览器)
Jan 15 Javascript
JavaScript中textRange对象使用方法小结
Mar 24 Javascript
JavaScript 实现完美兼容多浏览器的复制功能代码
Apr 28 Javascript
JavaScript浏览器对象模型BOM(BrowserObjectModel)实例详解
Nov 29 Javascript
jQuery插件fullPage.js实现全屏滚动效果
Dec 02 Javascript
jqGrid翻页时数据选中丢失问题的解决办法
Feb 13 Javascript
vue父组件向子组件传递多个数据的实例
Mar 01 Javascript
判断iOS、Android以及PC端的示例代码
Nov 15 Javascript
最新最全的手机号验证正则表达式
Feb 24 Javascript
JS实现九宫格拼图游戏
Jun 28 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
ThinkPHP空模块和空操作详解
2014/06/30 PHP
PHP生成指定长度随机数最简洁的方法
2014/07/14 PHP
PHP正则表达式之捕获组与非捕获组
2015/11/06 PHP
PHP实现基于面向对象的mysqli扩展库增删改查操作工具类
2017/07/18 PHP
利用PHPStorm如何开发Laravel应用详解
2017/08/30 PHP
laravel-admin 后台表格筛选设置默认的查询日期方法
2019/10/03 PHP
常用的javascript function代码
2008/05/23 Javascript
借用Google的Javascript API Loader来加速你的网站
2009/01/28 Javascript
jQuery UI AutoComplete 自动完成使用小记
2010/08/21 Javascript
js实现点击注册按钮开始读秒倒计时的小例子
2013/05/11 Javascript
一个JavaScript防止表单重复提交的实例
2014/10/21 Javascript
jQuery修改li下的样式以及li下的img的src的值的方法
2014/11/02 Javascript
在AngularJS中使用AJAX的方法
2015/06/17 Javascript
WordPress中鼠标悬停显示和隐藏评论及引用按钮的实现
2016/01/12 Javascript
jQuery插入节点和移动节点用法示例(insertAfter、insertBefore方法)
2016/09/08 Javascript
JS实现touch 点击滑动轮播实例代码
2017/01/19 Javascript
Vue组件通信实践记录(推荐)
2017/08/15 Javascript
React diff算法的实现示例
2018/04/20 Javascript
vue页面切换项目实现转场动画的方法
2019/11/12 Javascript
nodejs如何在package.json中设置多条启动命令
2020/03/16 NodeJs
[01:20]PWL S2开团时刻第三期——团战可以输 蝙蝠必须死
2020/11/26 DOTA
基于Python实现的百度贴吧网络爬虫实例
2015/04/17 Python
全面解析Python的While循环语句的使用方法
2015/10/13 Python
python使用threading获取线程函数返回值的实现方法
2017/11/15 Python
Python中一个for循环循环多个变量的示例
2019/07/16 Python
Python Pandas 如何shuffle(打乱)数据
2019/07/30 Python
pytorch索引查找 index_select的例子
2019/08/18 Python
python中count函数简单的实例讲解
2020/02/06 Python
如何在scrapy中集成selenium爬取网页的方法
2020/11/18 Python
python实现猜拳游戏项目
2020/11/30 Python
CSS3+DIV实现漂亮的动画彩色标签
2016/06/16 HTML / CSS
HTML5语义化元素你真的用对了吗
2019/08/22 HTML / CSS
alice McCALL官网:澳大利亚时尚品牌
2020/11/16 全球购物
.NET里面如何取得当前的屏幕分辨率
2012/12/06 面试题
机械设备与数控技术专业求职信
2014/08/10 职场文书
先进工作者推荐材料
2014/12/23 职场文书