日期:2014-05-16 浏览次数:20408 次
javascript内实现trim的方法
直接拷贝的话,空格可能出现问题,请仔细检查
function?? trim(str)
{
for(var?? i?? =?? 0?? ;?? i<str.length?? &&?? str.charAt(i)=="?? "?? ;?? i++?? )?? ;
for(var?? j?? =str.length;?? j>0?? &&?? str.charAt(j-1)=="?? "?? ;?? j--)?? ;
if(i>j)?? return?? "";?
return?? str.substring(i,j);?
}
方法二:
//?? 增加一个名为?? trim?? 的函数作为
//?? String?? 构造函数的原型对象的一个方法。
String.prototype.trim?? =?? function()
{
???????? //?? 用正则表达式将前后空格
???????? //?? 用空字符串替代。
???????? return?? this.replace(/(^\s*)|(\s*$)/g,"");
}
//?? 有空格的字符串
var?? s?? =?? "???????? 我的长度???????? ";
//?? 显示trim前长度
window.alert(s?? +?? "?? trim前长度:?? ("?? +?? s.length?? +?? ")");
//?? 删除前后空格
s?? =?? s.trim();
//?? 显示trim后长度
window.alert(s?? +?? "???? trim后长度:("?? +?? s.length?? +?? ")");
?
方法3:
//javascript中调用vbscript的函数,构造一个javascript版的trim 函数
<html>
<head>
</head>
<body>
<p> </p>
<script language=vbscript>
?--删除左/右的空格
//只删除左边的空白? 类似ruby中的ltrim
String.prototype.ltrim= function() {
??????? return this.replace(/^\s*/, "");
??? }
//只删除右边的空白? 类似ruby中的rtrim
??? String.prototype.rtrim= function() {
??????? return this.replace(/\s*$/, "");
??? }
??? String.prototype.trim= function() {
??????? return this.rtrim(this.ltrim(this));
??? }