我們在專案中如果寫到註冊的時候,使用者輸入空格,我們怎麼來剔除空格呢?
下面是我常用到的js與大家分享下:
第一種:循環檢查替換
[javascript]
//供使用者呼叫
function trim(s){
return trimRight(trimLeft(s));
}
//去掉左邊的空白
function trimLeft( s){
if(s == null) {
return "";
}
var whitespace = new String(" tnr");
var str = new String(s) ;
if (whitespace.indexOf(str.charAt(0)) != -1) {
var j=0, i = str.length;
while (j j ;
}
str = str.substring(j, i);
}
return str;
}
//去掉右邊的空白www.jb51.net
function trimRight(s){
if(s == null) return "";
var whitespace = new String(" tnr") ;
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;
}
第二種:正規替換
[javascript]
第三種:使用jquery
複製程式碼
程式碼如下
$.trim(str)
複製程式碼
程式碼如下:
function trim(str){
return str.replace(/^(s|u00A0) /,'').replace( /(s|u00A0) $/,''); }
複製程式碼
程式碼如下:
function trim(str){
return str.replace(/^(s |xA0) |(s|xA0) $/g, ''); }
複製程式碼
程式碼如下:
function trim(str){
function trim(str){
for(var i=str.length-1; i>=0; i--){
if(/S/.test (str.charAt(i))){
str = str.substring(0, i 1);
break; }
}
經過測試第五種方法在處理長字串時效率最高
。
複製程式碼
程式碼如下:
return str.replace(regExp,""); } //呼叫function add() { var ownername=document.form1.ownername.value; if(SystemTrim(ownername)=="") { alert("請輸入您的稱呼!"); return; } } <script> <🎜><🎜><🎜></script>