
DOMParserとは
DOMParserとはHTMLをDOMノードオブジェクトに変換するためのAPIです。
例えば以下のようなHTMLを取得して、ul#list 内にliタグを追加して addString の文字列をliタグ内に入れたい場合…
const htmlString = '<h1>Hello world!</h1><ul id="list"><li>foo</li><li>bar</li></ul>' const addString = '<baz>'
以下のようにDOMParserを使用することで、HTML内にliタグを追加して文字列を生成することができます。
const htmlString = '<h1>Hello world!</h1><ul id="list"><li>foo</li><li>bar</li></ul>'
const addString = '<baz>'
const parser = new DOMParser()
const doc = parser.parseFromString(htmlString, 'text/html')
const newLi = document.createElement('li')
newLi.textContent = addString
doc.getElementById('list').appendChild(newLi)
const resultString = doc.body.innerHTML
console.log(resultString)
// console.logの結果 <h1>Hello world!</h1><ul id="list"><li>foo</li><li>bar</li><li><baz></li></ul>
HTMLが文字列だとreplaceや文字列の連結(+)などで処理してしまう人がいますが、HTMLの場合はDOMノードオブジェクトに変換してから操作しないと記述ミスやエスケープの処理漏れが発生しやすいです。
そのため、なるべくDOMParserを使用することをオススメします。