javascript取代空格的方法:1、使用「name.replace(" ","");」替換;2、使用「replace(new RegExp(/( )/g),""); 」;3、使用「name.split(" ").join("");」等等。
本文操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
在JS中替換掉輸入框內的空格,是在處理表單需求的時候極為常用的一項操作,以防止使用者的操作習慣造成資料異常,確保傳參的安全性。
NO.1
name.replace(" ","");
上述方法是很簡單的替換,但是有兩個弱點:
1.只能替換單一英文空格或中文空格(全角) ;
2.只能替換目前字串的第一個匹配項。
NO.2
name.replace(new RegExp(/( )/g),"");
上述方法是透過正規匹配,能夠進行全部替換,但是還是有一個弱點:
1.只能替換英文空格或中文空格(全角)中的一種。
NO.3
name.split(" ").join("");
上述方法是透過字元分隔再合併,能夠進行全部替換,但是還是有一個弱點:
1.只能替換英文空格或者中文空格(全角)中的一種。
NO.4
name.replace(/(^\s*)|(\s*$)/g,"");
上述方法是透過正規匹配,能夠替換英文或中文空格,但是有一個弱點:
1.只能替換首尾的空格,對字串中間的空格不起作用。
終極殺招
name.replace(/\s+/g,"");
上述方法是透過正規匹配,能夠取代英文或中文空格,並進行全部替換。
【注意】JS中並沒有所謂的replaceAll方法,經筆者測試結果“undefined”,頁面上無法辨識的。當然也有一個可迂迴的方案,那就是根據replace的功能進行replaceAll方法原型重寫:
String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) { if (!RegExp.prototype.isPrototypeOf(reallyDo)) { return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi": "g")), replaceWith); } else { return this.replace(reallyDo, replaceWith); } }
【推薦學習:javascript高級教學】
以上是javascript怎麼替換空格的詳細內容。更多資訊請關注PHP中文網其他相關文章!