转自: http://easy0917.iteye.com/blog/1161135
方法一:
个人认为最好的方法.采用的是正则表达式,这是最核心的原理.其次.这个方法使用了JavaScript 的prototype 属性
- // Trim() , Ltrim() , RTrim()
- 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, "");
- }
方法二:
由于使用方法简单,所以这里就不举例子了.
- function lTrim(str) {
- if (str.charAt(0) == " ") {
- //如果字串左边第一个字符为空格
- str = str.slice(1);//将空格从字串中去掉
- //这一句也可改成 str = str.substring(1, str.length);
- str = lTrim(str); //递归调用
- }
- return str;
- }
- //rTrim()去掉字串右边的空格
- function rTrim(str) {
- var iLength;
- iLength = str.length;
- if (str.charAt(iLength - 1) == " "){
- //如果字串右边第一个字符为空格
- str = str.slice(0, iLength - 1);//将空格从字串中去掉
- //这一句也可改成 str = str.substring(0, iLength - 1);
- str = rTrim(str); //递归调用
- }
- return str;
- }
- //trim()去掉字串两边的空格
- function trim(str) {
- return lTrim(rTrim(str));
- }
这个方法将函数写在一起,通过传递参数不同而达到不同的实现效果
- //****************************************************************
- // Description: sInputString 为输入字符串,iType为类型,分别为
- // 0 - 去除前后空格; 1 - 去前导空格; 2 - 去尾部空格
- //****************************************************************
- function cTrim(sInputString,iType){
- var sTmpStr = ' '
- var i = -1
- if(iType == 0 || iType == 1){
- while(sTmpStr == ' '){
- ++i
- sTmpStr = sInputString.substr(i,1)
- }
- sInputString = sInputString.substring(i)
- }
- if(iType == 0 || iType == 2) {
- sTmpStr = ' '
- i = sInputString.length
- while(sTmpStr == ' ') {
- --i
- sTmpStr = sInputString.substr(i,1)
- }
- sInputString = sInputString.substring(0,i+1)
- }
- return sInputString
- }