質問: ''; ele.innerHTML += 'a'; ele.innerHTML += ''; console.log(ele.innerHTML); ``` コードでinnerHTMLに入れている順番の通り、 `a` のようにコンソールに表示されることを期待していたのですが、実際には `a` となってしまい、原因が全くわかりません。アイディアがある方は教えてください。 なおChrome55を使用しています。よろしくお願いします。
回答: `innerHTML`を直接書く場合、**完全なHTML**をセットする必要があります。閉じタグなしの``だけのようなものをセットすると、その時点で``が補われてしまいます。 ということで、`innerHTML`でHTMLを組み立てたい場合、変数で一気に書き換えるほうがいいです。 ``` var html = ''; html += 'a'; html += ''; var ele = document.createElement("span"); ele.innerHTML = html; console.log(ele.innerHTML); ```