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的闭包,原型,和匿名函数之旅
Oct 18 Javascript
Eclipse引入jquery报错如何解决
Dec 01 Javascript
javascript先序遍历DOM树的方法
Feb 27 Javascript
js实现3D图片环展示效果
Mar 09 Javascript
Node.js实现注册邮箱激活功能的方法示例
Mar 23 Javascript
讲解vue-router之什么是动态路由
May 28 Javascript
详解Vue的钩子函数(路由导航守卫、keep-alive、生命周期钩子)
Jul 24 Javascript
js实现左右轮播图
Jan 09 Javascript
如何使用JavaScript检测空闲的浏览器选项卡
May 28 Javascript
JavaScript读取本地文件常用方法流程解析
Oct 12 Javascript
解决Antd Table表头加Icon和气泡提示的坑
Nov 17 Javascript
原生JS中应该禁止出现的写法
May 05 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
PHP添加MySQL数据记录代码
2008/06/07 PHP
thinkphp验证码显示不出来的解决方法
2014/03/29 PHP
PHP包含文件函数include、include_once、require、require_once区别总结
2014/04/05 PHP
PHP获取时间排除周六、周日的两个方法
2014/06/30 PHP
Laravel向公共模板赋值方法总结
2019/06/25 PHP
js浮点数保留两位小数点示例代码(四舍五入)
2013/12/26 Javascript
jquery.form.js用法之清空form的方法
2014/03/07 Javascript
jQuery实现“扫码阅读”功能
2015/01/21 Javascript
Javascript核心读书有感之语句
2015/02/11 Javascript
JQuery实现动态适时改变字体颜色的方法
2015/03/10 Javascript
理解jquery事件冒泡
2016/01/03 Javascript
js实现对table的增加行和删除行的操作方法
2016/10/13 Javascript
通过sails和阿里大于实现短信验证
2017/01/04 Javascript
JS实现旋转木马式图片轮播效果
2017/01/18 Javascript
JavaScript中从setTimeout与setInterval到AJAX异步
2017/02/13 Javascript
JavaScript指定断点操作实例教程
2018/09/18 Javascript
脚手架vue-cli工程webpack的作用和特点
2018/09/29 Javascript
vue移动端html5页面根据屏幕适配的四种解决方法
2018/10/19 Javascript
extjs图表绘制之条形图实现方法分析
2020/03/06 Javascript
TensorFlow 实战之实现卷积神经网络的实例讲解
2018/02/26 Python
python使用opencv驱动摄像头的方法
2018/08/03 Python
python 读取鼠标点击坐标的实例
2018/12/29 Python
python如何实现视频转代码视频
2019/06/17 Python
pow在python中的含义及用法
2019/07/11 Python
从numpy数组中取出满足条件的元素示例
2019/11/26 Python
基于django 的orm中非主键自增的实现方式
2020/05/18 Python
python字符串拼接+和join的区别详解
2020/12/03 Python
详解HTML5将footer置于页面最底部的方法(CSS+JS)
2018/10/11 HTML / CSS
优秀党员主要事迹
2014/01/19 职场文书
工伤赔偿协议书范本
2014/04/15 职场文书
团党委领导干部党的群众路线教育实践活动个人对照检查材料思想汇
2014/10/05 职场文书
2014年涉外离婚协议书范本
2014/11/20 职场文书
适合青年人白手起家的创业项目分享
2019/08/16 职场文书
JavaWeb实现显示mysql数据库数据
2022/03/19 Java/Android
WINDOWS 64位 下安装配置mysql8.0.25最详细的教程
2022/03/22 MySQL
Java设计模式之代理模式
2022/04/22 Java/Android