function BaseTrim(str){
lIdx=0;rIdx=str.length;//lIdx=0 rIdx为参数str的长度,可以理解为两个遍历游标
if (BaseTrim.arguments.length==2);//若存在两个参数
act=BaseTrim.arguments[1].toLowerCase();//把第二个参数变成小写,赋给act
else//若参数不是两个,act="all"
act="all";
for(var i=0;i<str.length;i++){//对str遍历
thelStr=str.substring(lIdx,lIdx+1);//取字符串str中,index=lIdx的一个字符,可以理解为lIdx指向字符
therStr=str.substring(rIdx,rIdx-1);//取字符串str中,index=rIdx的一个字符,可以理解为rIdx指向的字符
if ((act=="all" || act=="left") && thelStr==" "){//若act=all或left,且lIdx指向的是一个空格,lIdx++
lIdx++;
}
if ((act=="all" || act=="right") && therStr==" "){//若act=all或right,且右边是一个空格,lIdx--
rIdx--;
}
}
str=str.slice(lIdx,rIdx);//返回从lIdx到rIdx的字符串
return str;
}
这是一个去掉字符串左边或右边,或两端的空格的方法
lIdx=0;rIdx=str.length;//lIdx=0 rIdx为参数str的长度,可以理解为两个遍历游标
if (BaseTrim.arguments.length==2);//若存在两个参数
act=BaseTrim.arguments[1].toLowerCase();//把第二个参数变成小写,赋给act
else//若参数不是两个,act="all"
act="all";
for(var i=0;i<str.length;i++){//对str遍历
thelStr=str.substring(lIdx,lIdx+1);//取字符串str中,index=lIdx的一个字符,可以理解为lIdx指向字符
therStr=str.substring(rIdx,rIdx-1);//取字符串str中,index=rIdx的一个字符,可以理解为rIdx指向的字符
if ((act=="all" || act=="left") && thelStr==" "){//若act=all或left,且lIdx指向的是一个空格,lIdx++
lIdx++;
}
if ((act=="all" || act=="right") && therStr==" "){//若act=all或right,且右边是一个空格,lIdx--
rIdx--;
}
}
str=str.slice(lIdx,rIdx);//返回从lIdx到rIdx的字符串
return str;
}
这是一个去掉字符串左边或右边,或两端的空格的方法
去掉第一个字符;
}
while(最后一个字符是空格){
去掉最后一个字符;
}或者用正则表达式更简单,正在学习中