為什麼 JavaScript 使用 Replace 方法只取代第一個實例?
嘗試使用 JavaScript 的 Replace() 方法取代字串中的字元時,使用者可能會遇到僅取代第一個實例的問題。要理解發生這種情況的原因,請務必注意 Replace() 方法的預設行為。
在提供的範例中,對日期字串呼叫 Replace() 以刪除所有出現的「/」字元。但是,結果僅替換字元的第一個實例。要全域取代所有出現的內容,replace() 方法需要新增「g」標誌,它代表「全域」。
透過新增「g」標誌,replace() 方法將搜尋字串中指定模式的所有符合項,並將它們替換為提供的替換文字。在給定的範例中,以下程式碼將實現所需的結果:
<code class="javascript">var id = 'c_' + date.replace(new RegExp("/", "g"), '');</code>
或者,可以使用更短的語法:
<code class="javascript">var id = 'c_' + date.replace(/\//g, '');</code>
透過合併「g」標誌, JavaScript將替換日期字串中所有“/”字符,確保結果ID 的正確性。
以上是為什麼 JavaScript Replace() 方法只替換第一個實例?的詳細內容。更多資訊請關注PHP中文網其他相關文章!