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 相关文章推荐
在第一个input框内输入内容.textarea自动得到第一个文件框的值的javascript代码
Apr 20 Javascript
Jquery cookie操作代码
Mar 14 Javascript
jquery判断checkbox(复选框)是否被选中的代码
Oct 20 Javascript
jQuery Tools tooltip使用说明
Jul 14 Javascript
js获取html页面节点方法(递归方式)
Dec 13 Javascript
Extjs grid添加一个图片状态或者按钮的方法
Apr 03 Javascript
点击button获取text内容并改变样式的js实现
Sep 09 Javascript
jquery实现模拟百分比进度条渐变效果代码
Oct 29 Javascript
Web性能优化系列 10个提升JavaScript性能的技巧
Sep 27 Javascript
微信小程序中实现一对多发消息详解及实例代码
Feb 14 Javascript
js实现股票实时刷新数据案例
May 14 Javascript
vue+element实现图片上传及裁剪功能
Jun 29 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
PHP中spl_autoload_register()和__autoload()区别分析
2014/05/10 PHP
PHP session文件独占锁引起阻塞问题解决方法
2015/05/12 PHP
实例讲解yii2.0在php命令行中运行的步骤
2015/12/01 PHP
ZendFramework2连接数据库操作实例
2017/04/18 PHP
php 与 nginx 的处理方式及nginx与php-fpm通信的两种方式
2018/09/28 PHP
Nigma vs Liquid BO3 第一场2.14
2021/03/10 DOTA
学习ExtJS accordion布局
2009/10/08 Javascript
JS input文本框禁用右键和复制粘贴功能的代码
2010/04/15 Javascript
读jQuery之十一 添加事件核心方法
2011/07/31 Javascript
location.href用法总结(最主要的)
2013/12/27 Javascript
jquery实现两个图片渐变切换效果的方法
2015/06/25 Javascript
不依赖Flash和任何JS库实现文本复制与剪切附源码下载
2015/10/09 Javascript
JS使用post提交的两种方式
2015/12/03 Javascript
浅析jQuery移动开发中内联按钮和分组按钮的编写
2015/12/04 Javascript
jqueryMobile使用示例分享
2016/01/12 Javascript
JavaScript 实现 Tab 点击切换实例代码
2017/03/25 Javascript
vue基础之事件v-onclick=&quot;函数&quot;用法示例
2019/03/11 Javascript
Js和VUE实现跑马灯效果
2020/05/25 Javascript
Python解惑之True和False详解
2017/04/24 Python
python3 遍历删除特定后缀名文件的方法
2018/04/23 Python
Python3爬虫全国地址信息
2019/01/05 Python
python write无法写入文件的解决方法
2019/01/23 Python
python网络爬虫 CrawlSpider使用详解
2019/09/27 Python
Python实现随机生成任意数量车牌号
2020/01/21 Python
关于python scrapy中添加cookie踩坑记录
2020/11/17 Python
python 用pandas实现数据透视表功能
2020/12/21 Python
关于python中remove的一些坑小结
2021/01/04 Python
澳大利亚首屈一指的鞋类品牌:Tony Bianco
2018/03/13 全球购物
公司新员工的演讲稿注意事项
2014/01/01 职场文书
《再见了,亲人》教学反思
2014/02/26 职场文书
小班幼儿评语大全
2014/04/30 职场文书
升学宴演讲稿
2014/09/01 职场文书
审计局班子四风对照检查材料思想汇报
2014/10/07 职场文书
立项申请报告范本
2015/05/15 职场文书
2015年度招聘工作总结
2015/05/28 职场文书
Java 死锁解决方案
2022/05/11 Java/Android