JS字符串函数扩展代码

代码如下:

/****************************************************
*CreateBy:joe zhou
*CreateDate:2011-9-4
*Description:字符串辅助函数
****************************************************/
//String.prototype = {
// caption: function () {
// },
// leftPad: function (padChar, width) {
// if (this.length >= width) {
// return this;
// }
// }
//};
String.prototype.padLeft = function (padChar, width) {
var ret = this;
while (ret.length < width) {
if (ret.length + padChar.length < width) {
ret = padChar + ret;
}
else {
ret = padChar.substring(0, width-ret.length) + ret;
}
}
return ret;
};
String.prototype.padRight = function (padChar, width) {
var ret = this;
while (ret.length < width) {
if (ret.length + padChar.length < width) {
ret += padChar;
}
else {
ret += padChar.substring(0, width - ret.length);
}
}
return ret;
};
String.prototype.trim = function () {
return this.replace(/^\s+/, '').replace(/\s+$/, '');
};
String.prototype.trimLeft = function () {
return this.replace(/^\s+/, '');
};
String.prototype.trimRight = function () {
return this.replace(/\s+$/, '');
};
String.prototype.caption = function () {
if (this) {
return this.charAt(0).toUpperCase() + this.substr(1);
}
return this;
};
String.prototype.reverse = function () {
var ret = '';
for (var i = this.length - 1; i >= 0; i--) {
ret += this.charAt(i);
}
return ret;
};
String.prototype.startWith = function (compareValue, ignoreCase) {
if (ignoreCase) {
return this.toLowerCase().indexOf(compareValue.toLowerCase()) == 0;
}
return this.indexOf(compareValue) == 0
};
String.prototype.endWith = function (compareValue, ignoreCase) {
if (ignoreCase) {
return this.toLowerCase().lastIndexOf(compareValue.toLowerCase()) == this.length - compareValue.length;
}
return this.lastIndexOf(compareValue) == this.length - compareValue.length;
};

(0)

相关推荐

  • js replace(a,b)之替换字符串中所有指定字符的方法

    如下所示: var str = 'abcadeacf'; var str1 = str.replace('a', 'o'); alert(str1); // 打印结果: obcadeacf var str2 = str.replace(/a/g, 'o'); alert(str2); //打印结果: obcodeocf, 注意: 此处replace的第一个参数为正则表达式,/g是全文匹配标识. 以上这篇js replace(a,b)之替换字符串中所有指定字符的方法就是小编分享给大家的全部内容了,

  • javascript框架设计读书笔记之字符串的扩展和修复

    1.repeat方法:将一个字符串重复自身n次.比如:repeat("chaojidan",2)   -> chaojidanchaojidan 方法1: 复制代码 代码如下: function repeat(str,n){ return Array.prototype.join.call({length:n+1},str);  //在类数组{length:n+1}上下文下执行join方法,并传入str.也就是用str来分隔类数组的选项,类数组是空,所以就有n个str分隔n+1个

  • JavaScript实现替换字符串中最后一个字符的方法

    本文实例讲述了JavaScript实现替换字符串中最后一个字符的方法.分享给大家供大家参考,具体如下: 1.问题背景 在一个输入框中,限制字符串长度为12位,利用键盘输入一个数字,会将字符串中最后一位替换,比如:111111111111,再输入一个3,会显示111111111113 2.具体实现 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xht

  • js实现prototype扩展的方法(字符串,日期,数组扩展)

    本文实例讲述了js实现prototype扩展的方法.分享给大家供大家参考,具体如下: String.prototype.isEmpty = function () { return !(/.?[^/s ]+/.test(this)); } //检测字符串是否为空 // 替换字符 String.prototype.reserve = function(type) { if (type == 'int') return this.replace(/^/d/g, ''); // 替换字符串中除了数字以

  • javascript String 的扩展方法集合

    //获取字符数组 String.prototype.ToCharArray=function() {          return this.split(""); } //获取N个相同的字符串 String.prototype.Repeat=function(num) {     var tmpArr=[];     for(var i=0;i<num;i++)    tmpArr.push(this);     return tmpArr.join("")

  • JavaScript基于扩展String实现替换字符串中index处字符的方法

    本文实例讲述了JavaScript基于扩展String实现替换字符串中index处字符的方法.分享给大家供大家参考,具体如下: 核心代码: String.prototype.replaceCharAt = function(n,c){ return this.substr(0, n)+ c + this.substr(n+1,this.length-1-n); } 用法示例: <!DOCTYPE html> <html lang="en"> <head&g

  • Javascript string 扩展库代码

    Javascript原生的String处理函数显得很不够丰富,原生string函数:http://www.jb51.net/w3school/js/jsref_obj_string.htm问题1:是否有只是针对String类型的扩展库呢?有,不多,不全面. 观点2: JQuery的强大在于DOM操作,因此不希望js string 扩展库是基于jquery开发的,是否认同? 问题3:我们需要什么样的string扩展函数?这个问题可以参考其他js库,以及其他语言的string操作函数 Prototy

  • JavaScript利用正则表达式替换字符串中的内容

    话不多说,请看具体实现代码 //从字符串'Is this all there is'中剪去'is': var str='Is this all there is'; var subStr=new RegExp('is');//创建正则表达式对象 var result=str.replace(subStr,"");//把'is'替换为空字符串 console.log(result);//Is th all there is var subStr=new RegExp('is','i');

  • 详解JS中Array对象扩展与String对象扩展

    废话不多说了,直接给大家上array对象扩展代码了,具体代码如下所示: /** * Created by laixiangran on 2016/01/07. * Array扩展 */ (function() { // 遍历数组 if (typeof Array.prototype.forEach != "function") { Array.prototype.forEach = function (fn, context) { for (var i = 0; i < this

  • Javascript String对象扩展HTML编码和解码的方法

    复制代码 代码如下: String.prototype.HTMLEncode = function() { var temp = document.createElement ("div"); (temp.textContent != null) ? (temp.textContent = this) : (temp.innerText = this); var output = temp.innerHTML; temp = null; return output; } String.

  • JavaScript中ES6字符串扩展方法

    es6这个String对象倒是扩展了不少方法,但是很多都是跟字符编码相关,个人选了几个感觉比较常用的方法: includes 搜索字符的神器 还记得我们之前如何判断某个字符串对象是否包含特地字符的吗? var str='google'; if(str.indexOf('o')>-1){ console.log('yes'); }else{ console.log('no'); } indexOf本来只是一个获取字符对应位置的方法,因为找到不到会返回-1这个值,就成了判断是否包含的方法,inclu

  • JavaScript 字符串数字左补位,右补位,取固定长度,截位扩展函数代码

    有时候我们的日期等不足两位的补一个0等,都可以使用这个. 这个大家应该都很明白了,就不废话了,代码如下: String.prototype.padLeft = Number.prototype.padLeft = function(total, pad) { return (Array(total).join(pad || 0) + this).slice(-total); } 测试代码: //补位 "X".padLeft(5, "Y"); //返回:YYYYX (

  • JavaScript常用字符串与数组扩展函数小结

    String对象的扩展函数: 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,&quo

随机推荐