JavaScript trim()
trim方法可以清除字串兩端的一個或者多個空格。
ES5之前,JavaScript沒有內建此方法,算是一個功能欠缺。
好在ES5新增此功能,彌補了此缺陷。
更多內容可以參閱JavaScript String 字串一章節。
語法結構:
[JavaScript] 純文字檢視 複製程式碼str.trim()
此方法能夠清除字串兩端的空格。
瀏覽器相容:
(1).IE9+瀏覽器支援此方法。
(2).edge瀏覽器支援此方法。
(3).谷歌瀏覽器支援此方法。
(4).火狐瀏覽器支援此方法。
(5).opera瀏覽器支援此方法。
(6).safria瀏覽器支援此方法。
程式碼例項:
[JavaScript] 純文字檢視 複製程式碼執行程式碼var str = " antzone "; console.log(str.length); console.log(str.trim().length);
程式碼執行效果截圖如下:
在應用trim方法之前,字串的長度是9,在應用之後,字串的長度是7。
從一個側面證明字串兩端的空格已經被刪除。
考慮到當前低版本IE瀏覽器還有一定的市場,所以需要進行一下相容。
下面就是一段能夠相容所有主流瀏覽器的程式碼例項:
[JavaScript] 純文字檢視 複製程式碼if (!String.prototype.trim) { String.prototype.trim = function () { return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''); }; } var str = " antzone "; console.log(str.length); console.log(str.trim().length);
上面能夠相容低版本IE瀏覽器,本站已經測試過了,下面對程式碼進行一下分析。
(1).第一行程式碼用來判斷當前瀏覽器是否支援trm方法,雖然trim方法是內建的,但是也是從原型鏈繼承的。
(2).如果瀏覽器不支援,那麼就在原型鏈上新增一個自定trm方法。
(3).核心是裡面的正規表示式,它能夠將字串兩端的空格替換為空。
前面介紹的是刪除字串兩端的空格,實際應用中,也許需要刪除字串中所有的空格。
下面通過程式碼例項補充一下此功能,需要的朋友可以借鑑一下。
[JavaScript] 純文字檢視 複製程式碼執行程式碼let str=" 螞蟻部落 antzone "; String.prototype.trim = function () { let reg=/\s/g; return this.replace(reg,""); }; console.log(str.length); console.log(str.trim().length);
程式碼執行效果截圖如下:
上面程式碼可以刪除字串中的所有空格。
實現原理非常簡單,\s匹配字串中所有的空格,然後通過replace方法將空格都替換為""。
最終達到了刪除所有空格的功能,更多內容參閱如下兩篇文章:
(1).\s參閱正規表示式 \s 元字元一章節。
(2).replace參閱正規表示式replace()一章節。
相關文章
- manjaro開啟sdd trimJAR
- 字串— trim()、trimStart() 和 trimEnd()字串
- Mapper.xml中的trimAPPXML
- 669-Trim a Binary Search Tree
- php之 trim ltrim rtrim 小坑PHP
- win10系統如何開啟trim_trim功能怎麼開啟win10Win10
- trim(用於去半形空格(英文))
- 加入了trim()方法,沒有去掉多餘空格
- String擴充套件trim方法,刪除前後空格套件
- PHP 原始碼探祕 – 為什麼 trim 會導致亂碼PHP原始碼
- 中介軟體:還在使用trim過濾請求引數嗎?
- .net打獨立執行環境遇到無法trim遇到的bug
- Win10系統開啟SSD固態硬碟TRIM的方法【圖文】Win10硬碟
- MySQL常用的字元函式:length,cancat,substr(substring),instr,trim,upper,lower,lpad,rpad,replaceMySql字元函式
- Linux平臺下SSD的TRIM指令的最佳使用方式(不區別對待NVMe)Linux
- 無所不能的Embedding5 - skip-thought的兄弟們[Trim/CNN-LSTM/quick-thought]CNNUI
- JavaScript高階:JavaScript物件導向,JavaScript內建物件,JavaScript BOM,JavaScript封裝JavaScript物件封裝
- C語言字串工具箱DIY之剔除字串首尾的空白字元的str_trim函式C語言字串字元函式
- javaScript系列[06]-javaScript和thisJavaScript
- [Javascript] How javascript read the property?JavaScript
- python切片 利用切片操作,實現一個trim()函式,去除字串首尾的空格,注意不要呼叫str的strip()方法Python函式字串
- javaScript系列[05]-javaScript和JSONJavaScriptJSON
- “This” is For JavaScriptJavaScript
- This in JavaScriptJavaScript
- JavaScript -"this"JavaScript
- JavaScriptJavaScript
- javascript ??JavaScript
- 44 道 JavaScript 難題(JavaScript Puzzlers!)JavaScript
- [Javascript] Understanding JavaScript Proxies with Symbol.toPrimitiveJavaScriptSymbolMIT
- JavaScript 教程之JavaScript常用框架簡介JavaScript框架
- [Javascript] Perform Set Operations using JavaScript Set MethodsJavaScriptORM
- javascript — == vs ===JavaScript
- JavaScript selectedIndexJavaScriptIndex
- JavaScript deleteCell()JavaScriptdelete
- JavaScript lastElementChildJavaScriptAST
- JavaScript hasAttribute()JavaScript
- JavaScript getAttributeNode()JavaScript
- JavaScript replaceChild()JavaScript