๋ชจ๋ ํฌ์คํ
์ ์ธํ๋ฐ [์ํ์ฝ๋ฉ] ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์์ ๋ด์ฉ์ ๋ด๊ณ ์์ผ๋ฉฐ
์ถ์ฒ๋ ์๋์ ์ฃผ์๋ก "egoing Lee"๋์ ์๋ฃ์
๋๋ค.
์์
์ ์ธ ์๋๊ฐ ์๋ ๊ณต๋ถํ ๊ฒ์ ์ ๋ฆฌํด๋๋ ๋ชฉ์ ์ผ๋ก ํฌ์คํ
ํ ๊ฒ์
๋๋ค.
www.inflearn.com/course/javascript-%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%EA%B0%95%EC%A2%8C#
์ด๋ฒ ํฌ์คํ
์ ๊ฐ์์ "Node๊ฐ์ฒด" ์ค ๋ฌธ์์ด๋ก ๋
ธ๋ ์ ์ด ๊ฐ์๋ฅผ ์์ฑํ์์ต๋๋ค.
๋ฌธ์์ด๋ก ๋
ธ๋ ์ ์ด
๋
ธ๋ ๋ณ๊ฒฝ API์์๋ ์ฌ๋ฌ ๋ฉ์๋๋ฅผ ์ด์ฉํด์ ๋
ธ๋๋ฅผ ์ ์ดํ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ์์๋ดค๋ค.
๊ทธ๋ฐ๋ฐ ์ด ๋ฐฉ์์ ๋ณต์กํ๊ณ ์ฅํฉํ๋ค. ์ข ๋ ํธ๋ฆฌํ๊ฒ ๋
ธ๋๋ฅผ ์กฐ์ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์.
innerHTML
innerHTML๋ ๋ฌธ์์ด๋ก ์์ ๋
ธ๋๋ฅผ ๋ง๋ค ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. ๋ํ ์์ ๋
ธ๋์ ๊ฐ์ ์ฝ์ด์ฌ ์๋ ์๋ค.
์ฝ๊ธฐ๋ฅผ ํตํด์ ํ๊ฒ์ด ๋๋ ์๋ฆฌ๋จผํธ์ ํ์ ์๋ฆฌ๋จผํธ ์ฝ๋๋ฅผ ๊ฐ์ ธ์์ ๋ฌธ์๋ฅผ ํตํด ์ง์ ์ ํ . ์ ์๋ค.
<ul id="target">
<li>HTML</li>
<li>CSS</li>
</ul>
<input type="button" onclick="get();" value="get" />
<input type="button" onclick="set();" value="set" />
<script>
function get(){
var target = document.getElementById('target');
alert(target.innerHTML);
}
function set(){
var target = document.getElementById('target');
target.innerHTML = "<li>JavaScript Core</li><li>BOM</li><li>DOM</li>";
}
</script>
outerHTML
outerHTML์ ์ ํํ ์๋ฆฌ๋จผํธ๋ฅผ ํฌํจํด์ ์ฒ๋ฆฌ๋๋ค. ์๊ธฐ์์ ์ ํฌํจํ ์ ์ฒด๋ฅผ ๋ณด์ฌ์ค๋ค. ์ฆ, target์ด ์์นํ๋ ulํ๊ทธ๋ถํฐ ์ญ ์ถ๋ ฅ์ด ๋๋ ๊ฒ์ด๋ค.
์์์ ์ฌ์ฉํ๋ innerHTMLํ๊ทธ๋ ์์ ์ ์ ์ธํ ํ์ ์๋ฆฌ๋จผํธ๋ง ๋ณด์ฌ์ฃผ์๊ธฐ ๋๋ฌธ์ ์ด ์ ์์ ๋๊ฐ์ง ๋ฉ์๋์ ์ฐจ์ด๊ฐ ์๋ค.
<ul id="target">
<li>HTML</li>
<li>CSS</li>
</ul>
<input type="button" onclick="get();" value="get" />
<input type="button" onclick="set();" value="set" />
<script>
function get(){
var target = document.getElementById('target');
alert(target.outerHTML);
}
function set(){
var target = document.getElementById('target');
target.outerHTML = "<ol><li>JavaScript Core</li><li>BOM</li><li>DOM</li></ol>";
}
</script>
innerText, outerText
innerHtml, outerHTML๊ณผ ๋ค๋ฅด๊ฒ ์ด API๋ค์ ๊ฐ์ ์ฝ์ ๋๋ HTML ์ฝ๋๋ฅผ ์ ์ธํ ๋ฌธ์์ด์ ๋ฆฌํดํ๊ณ , ๊ฐ์ ๋ณ๊ฒฝํ ๋๋ HTML์ ์ฝ๋๋ฅผ ๊ทธ๋๋ก ์ถ๊ฐํ๋ค.
์ฆ, ์ฝ๊ฒ ๋งํ์๋ฉด ์์ ๋ฉ์๋์ ๋น์ทํ์ง๋ง ํ๊ทธ๋ฅผ ์ ์ธํ๊ณ ํ
์คํธ๋ง ๋ฆฌํดํ๋ค๋ ๊ฒ์ด๋ค.
<ul id="target">
<li>HTML</li>
<li>CSS</li>
</ul>
<input type="button" onclick="get();" value="get" />
<input type="button" onclick="set();" value="set" />
<script>
function get(){
var target = document.getElementById('target');
alert(target.innerText);
}
function set(){
var target = document.getElementById('target');
target.innerText = "<li>JavaScript Core</li><li>BOM</li><li>DOM</li>";
}
</script>
insertAdjacentHTML()
์ข ๋ ์ ๊ตํ๊ฒ ๋ฌธ์์ด์ ์ด์ฉํด์ ๋
ธ๋๋ฅผ ๋ณ๊ฒฝํ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ค.
<ul id="target">
<li>CSS</li>
</ul>
<input type="button" onclick="beforebegin();" value="beforebegin" />
<input type="button" onclick="afterbegin();" value="afterbegin" />
<input type="button" onclick="beforeend();" value="beforeend" />
<input type="button" onclick="afterend();" value="afterend" />
<script>
function beforebegin(){
var target = document.getElementById('target');
target.insertAdjacentHTML('beforebegin','<h1>Client Side</h1>');
}
function afterbegin(){
var target = document.getElementById('target');
target.insertAdjacentHTML('afterbegin','<li>HTML</li>');
}
function beforeend(){
var target = document.getElementById('target');
target.insertAdjacentHTML('beforeend','<li>JavaScript</li>');
}
function afterend(){
var target = document.getElementById('target');
target.insertAdjacentHTML('afterend','<h1>Server Side</h1>');
}
</script>
//beforebegin์ด ์์นํ ์๋ฆฌ
<ul id="target">
//afterbegin์ด ์์นํ ์๋ฆฌ
<li>CSS</li>
//beforeend๊ฐ ์์นํ ์๋ฆฌ
</ul>
//afterend๊ฐ ์์นํ ์๋ฆฌ
๊ฒฐ๊ณผ