当前位置:首页 >> 网络编程

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

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字符串拼接的功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!