🧐 🤔 그거 어떻게 쓰더라 🙄 😙

innerHTML 편집과 appendChild() 차이

2022. 7. 6. Evergood Kim이가 씀

elem.innerHTML += '<a>어쩌구</a>' 하는 게 document.createElement 하고 그걸 또 여러 함수로 힘들게 클래스 등 세팅 다 한 다음 마지막에 appendChild() 하는 것보다 훨씬 간편해서 appendChild가 쓸모가 있는 건가 했는데. 오늘 드디어 차이점을 발견했어요.

자바스크립트에서 A 요소와 그 안에 있는 B 요소를 잡았다고 쳤을 때; A.innerHTML = '어쩌구' 해서 수정해버리면 그 다음엔 B를 수정하지 못하네요.

아마 정확히는; A.innerHTML = '어쩌구' 했을 때 새로 생성된, B와 똑같이 생긴 새로운 요소가 문서 안에서 B 대신 자리하고 있어서; 그 다음에는 아무리 B를 조작해도 문서와는 상관 없게 되어버리는 듯.

알고 보니까 당연한데. 근데 이 뻔한 걸, 알기 전에는 헛짓을 하고 있었단 말이지.나 빠가사리?

728x90