str.substring()——多方位詳解

一、基本介紹

在JavaScript中,字元串是常見數據類型之一,而在我們操作字元串時,常常需要截取其中一部分。這時,str.substring()方法就派上了用場。該方法用於獲取字元串中指定下標之間的字元。

/**
 * 語法:str.substring(startIndex, endIndex)
 * 參數:
 *  startIndex:開始下標,必需。代表截取字元串的起始下標(包括該下標的字元)
 *  endIndex:結束下標,可選。代表截取字元串的結束下標(不包括該下標的字元),若不傳遞該參數,則截取到字元串末尾。
 * 返回值:字元串。代表從該字元串中的startIndex到endIndex範圍內的子字元串。
 */

二、示例演示

我們通過幾個具體的示例演示一下str.substring()方法的使用:

1、截取指定下標到末尾的字元串

let str = "Hello world!";
console.log(str.substring(3));  // 輸出結果:lo world!

上面代碼中,startIndex為3,所以獲取的字元串從字元「l」開始。因為沒有傳遞結束下標,所以獲取的字元一直到字元串末尾。

2、截取指定下標範圍的字元串

let str = "Hello world!";
console.log(str.substring(3, 8));  // 輸出結果:lo wo

上面代碼中,startIndex為3,代表從第4個字元(含)開始。endIndex為8,代表截止到第9個字元(不含)。

3、截取從後往前數指定下標範圍的字元串

let str = "Hello world!";
console.log(str.substring(-5, -1));  // 輸出結果:orld

上面代碼中,若下標為負數,則從字元串末尾開始往前數,如:startIndex=-5表示從倒數第5個字元(含)開始,endIndex=-1表示截止到倒數第2個字元(不含)。

4、startIndex與endIndex互換

let str = "Hello world!";
console.log(str.substring(8, 3));  // 輸出結果:lo wo

上面代碼中,雖然startIndex的值大於endIndex,但方法仍然可以正確執行,因為該方法會自動將startIndex和endIndex的值互換。

三、注意事項

str.substring()方法也有一些需要注意的地方:

1、參數類型必須為數字

無論是startIndex還是endIndex,其參數類型必須為數字。如果傳入的是非數字類型的參數,該方法會自動將其轉化為數字類型。

2、endIndex可選

如果不傳入endIndex參數,則該方法會默認截取到字元串的最後一個字元(等同於調用str.substring(startIndex, str.length))。

3、生成新的字元串

無論startIndex和endIndex之間的字元有沒有被修改,該方法都會返回一個新的字元串。原有的字元串不會被修改。

4、字元串下標越界

如果傳入的startIndex或endIndex超出字元串長度,該方法仍然可以執行,但會自動將超出邊界的下標修正為字元串邊界。

四、總結

str.substring()方法在JavaScript的字元串處理中使用頻率較高。當我們需要截取字元串的一部分時,可以通過該方法在startIndex和endIndex之間獲取所需的字元。

在使用該方法時,需要注意參數類型必須為數字、endIndex可選、生成新的字元串、以及字元串下標越界等細節問題。

原創文章,作者:JJXDT,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/369282.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
JJXDT的頭像JJXDT
上一篇 2025-04-12 13:00
下一篇 2025-04-12 13:01

相關推薦

  • Python中str的用法解析

    Python是一種非常流行的編程語言,被廣泛用於各種項目和應用程序的開發,其中str類型是python語言非常重要的一部分。在本文中,我們將從多個方面對Python中str類型進行…

    編程 2025-04-27
  • Python中的str和int類型

    Python是一種高級編程語言,有許多基本數據類型。其中,str和int是兩個最常用的數據類型之一。str是指字元串類型,表示一連串的字元,而int則是整數類型,表示正負整數。在本…

    編程 2025-04-27
  • Linux sync詳解

    一、sync概述 sync是Linux中一個非常重要的命令,它可以將文件系統緩存中的內容,強制寫入磁碟中。在執行sync之前,所有的文件系統更新將不會立即寫入磁碟,而是先緩存在內存…

    編程 2025-04-25
  • 神經網路代碼詳解

    神經網路作為一種人工智慧技術,被廣泛應用於語音識別、圖像識別、自然語言處理等領域。而神經網路的模型編寫,離不開代碼。本文將從多個方面詳細闡述神經網路模型編寫的代碼技術。 一、神經網…

    編程 2025-04-25
  • 詳解eclipse設置

    一、安裝與基礎設置 1、下載eclipse並進行安裝。 2、打開eclipse,選擇對應的工作空間路徑。 File -> Switch Workspace -> [選擇…

    編程 2025-04-25
  • Linux修改文件名命令詳解

    在Linux系統中,修改文件名是一個很常見的操作。Linux提供了多種方式來修改文件名,這篇文章將介紹Linux修改文件名的詳細操作。 一、mv命令 mv命令是Linux下的常用命…

    編程 2025-04-25
  • Python輸入輸出詳解

    一、文件讀寫 Python中文件的讀寫操作是必不可少的基本技能之一。讀寫文件分別使用open()函數中的’r’和’w’參數,讀取文件…

    編程 2025-04-25
  • Python安裝OS庫詳解

    一、OS簡介 OS庫是Python標準庫的一部分,它提供了跨平台的操作系統功能,使得Python可以進行文件操作、進程管理、環境變數讀取等系統級操作。 OS庫中包含了大量的文件和目…

    編程 2025-04-25
  • nginx與apache應用開發詳解

    一、概述 nginx和apache都是常見的web伺服器。nginx是一個高性能的反向代理web伺服器,將負載均衡和緩存集成在了一起,可以動靜分離。apache是一個可擴展的web…

    編程 2025-04-25
  • git config user.name的詳解

    一、為什麼要使用git config user.name? git是一個非常流行的分散式版本控制系統,很多程序員都會用到它。在使用git commit提交代碼時,需要記錄commi…

    編程 2025-04-25

發表回復

登錄後才能評論