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 相关文章推荐
iframe 自适应高度[在IE6 IE7 FF下测试通过]
Apr 13 Javascript
jquery实现漂浮在网页右侧的qq在线客服插件示例
May 13 Javascript
jquery next nextAll nextUntil siblings的区别介绍
Oct 05 Javascript
自制的文件上传JS控件可支持IE、chrome、firefox etc
Apr 18 Javascript
javascript结合ajax读取txt文件内容
Dec 05 Javascript
JQuery选中checkbox方法代码实例(全选、反选、全不选)
Apr 27 Javascript
JQuery实现样式设置、追加、移除与切换的方法
Jun 11 Javascript
JavaScript基础重点(必看)
Jul 09 Javascript
react-router实现按需加载
May 09 Javascript
angular4模块中给标签添加背景图的实现方法
Sep 15 Javascript
微信小程序使用modal组件弹出对话框功能示例
Nov 29 Javascript
浅谈vue-router 路由传参的方法
Dec 27 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
第十一节 重载 [11]
2006/10/09 PHP
php动态绑定变量的用法
2015/06/16 PHP
PHP中Restful api 错误提示返回值实现思路
2016/04/12 PHP
ThinkPHP框架实现的邮箱激活功能示例
2018/06/15 PHP
Vagrant(WSL)+PHPStorm+Xdebu 断点调试环境搭建
2019/12/13 PHP
jquery 问答知识整理
2010/02/11 Javascript
javascript深入理解js闭包
2010/07/03 Javascript
jQuery Tab插件 用于在Tab中显示iframe,附源码和详细说明
2011/06/27 Javascript
js面向对象设计用{}好还是function(){}好(构造函数)
2011/10/23 Javascript
jquery 为a标签绑定click事件示例代码
2014/06/23 Javascript
jQuery实现可以控制图片旋转角度效果(附demo源码下载)
2016/01/27 Javascript
node.js cookie-parser 中间件介绍
2016/06/06 Javascript
Laydate时间组件在火狐浏览器下有多时间输入框时只能给第一个输入框赋值的解决方法
2016/08/18 Javascript
简单实现node.js图片上传
2016/12/18 Javascript
JS控件bootstrap suggest plugin使用方法详解
2017/03/25 Javascript
JavaScript中document.referrer的用法详解
2017/07/04 Javascript
bootstrap下拉分页样式 带跳转页码
2018/12/29 Javascript
微信小程序实现手势滑动效果
2019/08/26 Javascript
vue 解决computed修改data数据的问题
2019/11/06 Javascript
JS表单验证插件之数据与逻辑分离操作实例分析【策略模式】
2020/05/01 Javascript
python实现无证书加密解密实例
2014/10/27 Python
python实现给微信公众号发送消息的方法
2017/06/30 Python
python中itertools模块zip_longest函数详解
2018/06/12 Python
python读取一个目录下所有txt里面的内容方法
2018/06/23 Python
centos6.5安装python3.7.1之后无法使用pip的解决方案
2019/02/14 Python
linux环境中没有网络怎么下载python
2019/07/07 Python
python使用turtle库绘制奥运五环
2020/02/24 Python
html5新增的属性和废除的属性简要概述
2013/02/20 HTML / CSS
意大利综合购物网站:Giordano Shop
2016/10/21 全球购物
State Cashmere官网:半零售价可持续蒙古羊绒
2020/02/26 全球购物
爱国教育主题班会
2015/08/14 职场文书
《卧薪尝胆》读后感3篇
2019/12/26 职场文书
Python序列化与反序列化相关知识总结
2021/06/08 Python
openstack中的rpc远程调用的方法
2021/07/09 Python
Nginx下SSL证书安装部署步骤介绍
2021/12/06 Servers
css3中2D转换之有趣的transform形变效果
2022/02/24 HTML / CSS