.replace()
是原生的JavaScript函式,作法是針對傳入的字串,根據字串間的標籤置換成後續傳入的值
- 最常用的就是避免XSS的自定義JavaScript函式
escapeHtml()
// 純文字轉換
function escapeHtml(unsafe) {
return unsafe
.replace(/&/g, '&')
.replace(/</g, '<')
.replace(/>/g, '>')
.replace(/"/g, '"')
.replace(/'/g, ''');
}
- 而針對SPA的網頁,要用JavaScript取得資料後再渲染出網頁內容,本來的智障寫法可能如下,東西全部狗在一起

- 這時候如果使用replace()的話....把醜陋的模板拿掉,讓主程式變得更乾淨

- 針對多個要置換的內容,其實寫法就是
變數名稱.replace(更換的變數一).replace(更換的變數二)
這樣一直replace下去
const temp.replace('{ID}', escapeHtml(ID)).replace('{time}', escapeHtml(time))

- 留意這
replace()
的寫法只會對「第一個」符合的tag做置換,而如果一次要置換多個相同的tag話,則必須仿照escapeHtml()
的寫法,用正規表達式來寫
