由于javascript内部没有自带去字符串左右空白函数,以下函数可以用来去掉左右空白
方法一:普通算法
//供使用者调用 function trim(s){ return trimRight(trimLeft(s)); } //去掉左边的空白 function trimLeft(s){ if(s == null) { return ""; } var whitespace = new String(" \t\n\r"); var str = new String(s); if (whitespace.indexOf(str.charAt(0)) != -1) { var j=0, i = str.length; while (j < i && whitespace.indexOf(str.charAt(j)) != -1){ j++; } str = str.substring(j, i); } return str; } //去掉右边的空白 function trimRight(s){ if(s == null) return ""; var whitespace = new String(" \t\n\r"); var str = new String(s); if (whitespace.indexOf(str.charAt(str.length-1)) != -1){ var i = str.length - 1; while (i >= 0 && whitespace.indexOf(str.charAt(i)) != -1){ i--; } str = str.substring(0, i+1); } return str; }
方法二:正则表达式
//去左空格;function ltrim(s){ return s.replace(/(^\s*)/g, "");}//去右空格;function rtrim(s){ return s.replace(/(\s*$)/g, "");}//去左右空格;function trim(s){ return rtrim(ltrim(s));}//简写形式s.replace(/(^\s*)|(\s*$)/g, "");