JS扩展String.prototype.format字符串拼接的功能


Posted in Javascript onMarch 09, 2018

1、题外话,有关概念理解:String.prototype 属性表示 String原型对象。所有 String 的实例都继承自 String.prototype. 任何String.prototype上的改变都会影响到所有的 String 实例。

2、上正文,js扩展String.prototype.format字符串拼接的功能,首先是基础功能的改造:

String.prototype.format = function(){
  if(arguments.length==0){
    return this;
  }
  for(var s=this, i=0; i<arguments.length; i++){
    s = s.replace(new RegExp("\\{"+i+"\\}","g"), arguments[i]);
  }
  return s;
};

3、然后就是调用方式:

//方式1
var test = '我的{0}是{1}';
var result = test.format('id','城市之光');
//方式2
var test = '我的{name1}是{name2}';
var result = test.format({name1:'id',name2:'城市之光'});

4、就这么简单,附带一个对trim()的扩展

String.prototype.trim = function() { 
 return this.replace(/(^\s*)|(\s*$)/g, ""); 
};
String.prototype.ltrim = function() { 
 return this.replace(/(^\s*)/g, ""); 
};
String.prototype.rtrim = function() { 
 return this.replace(/(\s*$)/g, ""); 
};
//调用方式
var eg1 = $('#id').val().trim();

总结

以上所述是小编给大家介绍的JS扩展String.prototype.format字符串拼接的功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript Keycode对照表
Oct 24 Javascript
用JavaScript修改CSS属性的代码
May 06 Javascript
jquery mobile事件多次绑定示例代码
Sep 13 Javascript
jQuery实现复选框批量选择与反选的方法
Jun 17 Javascript
JavaScript必知必会(二) null 和undefined
Jun 08 Javascript
jquery实现企业定位式导航效果
Jan 01 jQuery
小程序文字跑马灯效果
Dec 28 Javascript
js纯前端实现腾讯cos文件上传功能的示例代码
May 14 Javascript
详解Vue.js和layui日期控件冲突问题解决办法
Jul 25 Javascript
Vue使用vue-recoure + http-proxy-middleware + vuex配合promise实现基本的跨域请求封装
Oct 21 Javascript
在vue中利用v-html按分号将文本换行的例子
Nov 14 Javascript
5个实用的JavaScript新特性
Jun 16 Javascript
详解ES6通过WeakMap解决内存泄漏问题
Mar 09 #Javascript
JavaScript实现微信号随机切换代码
Mar 09 #Javascript
AngularJS中重新加载当前路由页面的方法
Mar 09 #Javascript
vue.js 底部导航栏 一级路由显示 子路由不显示的解决方法
Mar 09 #Javascript
vue+element-ui+ajax实现一个表格的实例
Mar 09 #Javascript
使用live-server快速搭建本地服务器+自动刷新的方法
Mar 09 #Javascript
解决低版本的浏览器不支持es6的import问题
Mar 09 #Javascript
You might like
图书管理程序(三)
2006/10/09 PHP
php实现zip压缩文件解压缩代码分享(简单易懂)
2014/05/10 PHP
教你如何快捷的使用cmd访问mysql小技巧
2014/05/26 PHP
php解决抢购秒杀抽奖等大流量并发入库导致的库存负数的问题
2014/06/19 PHP
Laravel 5 学习笔记
2015/03/06 PHP
PHP Swoole异步MySQL客户端实现方法示例
2019/10/24 PHP
在JavaScript中,为什么要尽可能使用局部变量?
2009/04/06 Javascript
js 返回时间戳所对应的具体时间
2010/07/20 Javascript
Javascript实现的类似Google的Div拖动效果代码
2011/08/09 Javascript
Jquery之Ajax运用 学习运用篇
2011/09/26 Javascript
JS定时器实例详细分析
2013/10/11 Javascript
IE6下javasc#ipt:void(0) 无效的解决方法
2013/12/23 Javascript
SeaJS入门教程系列之完整示例(三)
2014/03/03 Javascript
JavaScript获取当前网页最后修改时间的方法
2015/04/03 Javascript
JS操作XML实例总结(加载与解析XML文件、字符串)
2015/12/08 Javascript
input点击后placeholder中的提示消息消失
2016/01/15 Javascript
jQuery实现简单的滑动导航代码(移动端)
2017/05/22 jQuery
node通过npm写一个cli命令行工具
2017/10/12 Javascript
Node实战之不同环境下配置文件使用教程
2018/01/02 Javascript
vue中关闭eslint的方法分析
2018/08/04 Javascript
使用ESLint禁止项目导入特定模块的方法步骤
2019/03/04 Javascript
解决vue.js中settimeout遇到的问题(时间参数短效果不稳定)
2020/07/21 Javascript
JavaScript常用8种数组去重代码实例
2020/09/09 Javascript
[08:47]2018国际邀请赛 OG战队举杯时刻
2018/08/29 DOTA
Python实现简单拆分PDF文件的方法
2015/07/30 Python
Python进阶之自定义对象实现切片功能
2019/01/07 Python
如何通过Python实现标签云算法
2019/07/02 Python
Python之指数与E记法的区别详解
2019/11/21 Python
django数据模型(Model)的字段类型解析
2019/12/25 Python
Python面向对象之私有属性和私有方法应用案例分析
2019/12/31 Python
python numpy实现rolling滚动案例
2020/06/08 Python
基于python调用jenkins-cli实现快速发布
2020/08/14 Python
手把手教你从PyCharm安装到激活(最新激活码),亲测有效可激活至2089年
2020/11/25 Python
Skechers越南官方网站:来自美国的运动休闲品牌
2021/02/22 全球购物
介绍一下sql server的安全性
2014/08/10 面试题
如果重写了对象的equals()方法,需要考虑什么
2014/11/02 面试题