JS中如何去除字符串的空格

在JS中,我們經(jīng)常需要處理字符串,也經(jīng)常需要去除字符串的空格。

  1. 通過字符串自帶方法
<script type="text/javascript">
    var str = `             Hello World!                 `;
    console.log(str.trim());//去除字符串開頭和結(jié)尾的所有空格
    console.log(str.trimLeft());//去除左邊(開頭)所有空格
    console.log(str.trimRight());//去除右邊(結(jié)尾)所有空格
</script>

缺陷:通過字符串自帶方法,無法去除字符串中間的空格
2.通過RegExp

<script type="text/javascript">
    var str = `             Hello World!                 `;
    console.log(str.replace(/\s*/g,''));//全局匹配字符串所有空格,替換成''
    console.log(str.replace(/^\s*|\s*$/g,''));//匹配開頭和結(jié)尾的所有空格,替換成''
    console.log(str.replace(/^\s*/,''));//匹配開頭的所有空格,替換成''
    console.log(str.replace(/\s*$/,''));//匹配結(jié)尾的0個或多個空格,替換成''
</script>
  1. 通過jQuery
<script src="jquery-3.3.1.js"></script>
<script type="text/javascript">
    $(function(){
        var str = `             Hello World!                 `;
        console.log($.trim(str));//去除字符串兩端空格
    });
</script>

使用$.trim()也只能出去兩端空格


知識點回顧:
String相關(guān)
原始值字符串并沒有屬性和方法,因為他們不是對象。但原始值可以使用 屬性和方法,是因為 JavaScript 在執(zhí)行其方法和屬性時經(jīng)過了包裝類

  1. String()可以將任意類型的值轉(zhuǎn)為字符串。
  2. String.fromCharCode(),會根據(jù)傳入的Unicode碼點返回對應(yīng)的字符串
  3. str.length,屬性會返回字符串的長度
  4. String的實例對象的方法
  • charAt()返回指定位置的字符

  • charCodeAt()返回給定位置字符的Unicode碼點)。

  • concat()連接兩個字符串,返回一個新字符串,不改變原字符串。

  • slice()用于從原字符串截取子字符串并返回,不改變原字符串。
    當(dāng)有兩個參數(shù)時:第一個表示開始位,第二個是結(jié)束位(不含該位置)
    當(dāng)只有一個參數(shù)時:則表示從該位開始,截取到最后并返回。
    當(dāng)不傳參時:相當(dāng)于是截取了整個字符串,可以理解為復(fù)制了一個一樣的值
    如果參數(shù)是負值:表示從倒數(shù)位置。
    如果第一個參數(shù)大于第二個參數(shù):如slice(3,1),方法返回一個空字符串。

  • substring()用于從原字符串取出子字符串并返回,不改變原字符串。優(yōu)先使用slice。

  • substr()也是從原字符串取出子字符串并返回,不改變原字符串。
    如果兩個參數(shù):第一個參數(shù)表示開始位,第二個參數(shù)表示截取的子字符串的長度。
    當(dāng)只有一個參數(shù)時:則表示從開始位開始,截取到原字符串最后。
    如果第一個參數(shù)是負數(shù):表示倒數(shù)計算的字符位置
    如果第二個參數(shù)是負數(shù),將被自動轉(zhuǎn)為0,因此會返回空字符串。

  • indexOf(),lastIndexOf()
    用于確定一個字符串在另一個字符串中的位置,都返回一個整數(shù),表示匹配開始的位置。如果返回-1,就表示不匹配。

  • trim()用于去除字符串兩端的空格,不改變原字符串。

  • toLowerCase()轉(zhuǎn)為小寫,不改變原字符串。

  • toUpperCase()轉(zhuǎn)為大寫。不改變原字符串。

  • localeCompare()比較兩個字符串,如果返回小于0,表示第一個字符串小于第二個字符串;如果等于0,表示兩者相等;如果大于0,表示第一個字符串大于第二個字符串。
    該方法的最大特點,就是會考慮自然語言的順序。實際上這是JavaScript采用的是Unicode碼點比較

  • match()用于匹配原字符串是否有某個子字符串,返回一個數(shù)組,成員為匹配的第一個字符串。如果沒有找到匹配,則返回null

  • search()用法等同于match,表示查找字符串中是否有某個字符串。但是返回值為匹配的第一個位置。如果沒有找到匹配,則返回-1。

  • replace()替換匹配的子字符串,一般情況下只替換第一個匹配(除非使用帶有g(shù)修飾符的正則表達式)

  • split()按照給定分割字符串進行分割,返回子字符串組成的數(shù)組。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,708評論 0 5
  • 第5章 引用類型(返回首頁) 本章內(nèi)容 使用對象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類型 使用基本類型...
    大學(xué)一百閱讀 3,675評論 0 4
  • 1 Python 字符串的 CRUD 操作 1.1 創(chuàng)建字符串 字符串是 Python 中最常用的數(shù)據(jù)類型。我們可...
    藕絲空間閱讀 879評論 0 1
  • Javascript有很多字符串的方法,有的人有W3C的API,還可以去MDN上去找,但是我覺得API上說的不全,...
    頑皮的雪狐七七閱讀 2,365評論 0 2
  • 檢視人: 羅燕玲 【三個標(biāo)簽】 1、 一個11歲男孩的媽媽 2. 時間管理的鑒堅定踐行者 3. 從教20年,有豐富...
    ahluo閱讀 278評論 1 4

友情鏈接更多精彩內(nèi)容