难舍Javascript 篇 之 扩展String 函数

工作需要,暂时要告别javascript 。趁这段时间不是特别忙,将一些javascript 技术总结下。


/**
* @brief 扩展原生字符串
* @author hechangmin@gmail.com
*/

var StringEx =
{
/**
* @brief 去除字符串前后空格
*/
trim : function()
{
return this.replace(/(^\s*)|(\s*$)/g, "");
},

/**
* @brief 去除左边空格
*/
ltrim : function()
{
return this.replace(/(^\s*)/g, "");
},

/**
* @brief 去除右边空格
*/
rtrim : function()
{
return this.replace(/(\s*$)/g, "");
},

/**
* @brief 避免XSS 攻击
*/
avoidXSS : function()
{
var strTemp = this.replace(/&/g, "&");
strTemp = strTemp.replace(/</g, "<");
strTemp = strTemp.replace(/>/g, ">");
strTemp = strTemp.replace(/\"/g, """);
return strTemp;
} ,

/**
* @brief 获取字符串的字节长度 汉字默认双字节
*/
byteLength : function()
{
return this.replace(/[^\x00-\xff]/g,"**").length;
},

/**
* @brief 除去HTML标签
* @example <div id="test1">aaaa</div> => aaaa
*/
removeHTML : function()
{
return this.replace(/<\/?[^>]+>/gi, '');
},

/**
* @brief 格式化字符串
* @example "<div>{0}</div>{1}".format(txt0,txt1)
*/
format : function()
{
var args = [];

for (var i = 0, il = arguments.length; i < il; i++)
{
args.push(arguments[i]);
}

return this.replace(/\{(\d+)\}/g, function(m, i)
{
return args[i];
});
},

/**
* @brief 字符串转数字
*/
toInt : function()
{
return Math.floor(this);
}
}


for (var it in StringEx)
{
String.prototype[it] = StringEx[it];
}
test:

var strTest = " -{0}这里是扩展原生字符串test{1}- ";

alert(strTest.length); // output : 26
alert(strTest.ltrim().length); // 23
alert(strTest.rtrim().length); // 25

alert(strTest.byteLength()); // 36

alert(strTest.format("abc","def")); // -abc这里是扩展原生字符串testdef-

var strNumber = "89989";

alert(typeof strNumber.toInt()); // number

var domTest = document.getElementById("test1").outerHTML;

alert(domTest);

alert(domTest.avoidXSS());
alert(domTest.removeHTML());
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值