4์ 25์ผ ~ 5์ 1์ผ ํ ์ฃผ ํ๊ณ ํ์ตํ ๊ฒ JS ํ๋ก๋ฏธ์ค์ ๋ํด ๋ฐฐ์ ๋ค. ์ด๋ฒคํธ ์ ํ์ ๋ํด ๋ฐฐ์ ๋ค. Canvas API๋ฅผ ์ ํ๋ค. ์๋ฃ๊ตฌ์กฐ/์๊ณ ๋ฆฌ์ฆ ์คํฐ๋๋ฅผ ํตํด leetCode๋ฅผ ํ๋ฃจ์ 4๋ฌธ์ ์ฉ ํ์ด๋ณด๊ณ ์๋ค. ์ฐ๊ฒฐ๋ฆฌ์คํธ์ ๋ค์ํ ๋ฉ์๋๋ฅผ ์ ํ๊ฒ ๋์๋ค. ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐ ๋ณต์ก๋์ ๋ํด ์ ๋ฆฌํ๋ค. ๋๋์ ์คํฐ๋๋ฅผ ํตํด ๊ณต๋ถ์๊ฐ์ ๋ง์ด ๋๋ฆฌ๊ณ ์๋ค. ์ฝ์ง ์์ ์๊ณ ๋ฆฌ์ฆ! ๋ค์ํ ๋ฌธ์ ๋ค์ ์ ํด๋ณด๊ณ ์๋ค. 1์ผ 1ํฌ์คํ ์ ๋๋๋ก ์๋ฏธ์๊ฒ ํด๋ณด๋ ค ํ๊ณ ์๋๋ฐ ์ฝ์ง ์๋ค. ๋ณด์ํ ์ ์ฝ๋ฉํ ์คํธ ์ค๋นํ๊ธฐ ์ด๊ฒ์ ๊ฒ ํด๋ณด๋ฉฐ DOM ์กฐ์์ ๋ง์ด ํด๋ณด๊ธฐ 1์ผ 1ํฌ์คํ ๋ด์ฉ ๋ณด์ํ๊ธฐ
4์ 18์ผ ~ 24์ผ ํ ์ฃผ ํ๊ณ 4์ ์ ์งธ์ฃผ๋ฅผ ๋์๋ณด๋ ํ ์ฃผ ํ๊ณ . ํ์ตํ ๊ฒ JS ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ก DOM์ ์กฐ์ํด๋ณด์๋ค. ๋น๋๊ธฐ ํต์ ์ ๋ฐฉ๋ฒ์ค fetch API๋ฅผ ์ฌ์ฉํด๋ณด์๋ค. ์๋ฃ๊ตฌ์กฐ/์๊ณ ๋ฆฌ์ฆ leetCode๋ฅผ ํ๋๋ฌธ์ ์ฉ ํ์ด๋ณด๊ณ ์๋ค ๋ฐฐ์ด์ ์ฌ๋ฌ ํ์ ๋ฌธ์ ๋ค์ ํ์ด๋ณด๊ณ ์๋ค. ์ฐ๊ฒฐ๋ฆฌ์คํธ์ ๊ตฌ์กฐ์ ๋ํด์ ๋ค์ ๋ณต์ตํ๋ ์๊ฐ์ ๊ฐ์ก๋ค. ๊ทธ ์ธ ๊นํ๋ธ ๋ฆฌ๋๋ฏธ๋ฅผ ๊พธ๋ฉฐ ๋ณด์๋ค. var์ let, const ์ ๋ํด์. ๋๋์ SASS๊ฐ ํธํด์ง๊ณ ์๋ค. (๊ฐ๊ธธ์ด ๋ฉ์ง๋ง) ์ด๋ฒ ์ฃผ๋ ์ง์ ๋ญ๊ฐ ํด๋ณด๋ ์๊ฐ์ ๋ง์ด ๊ฐ์ง๋ค๋ณด๋ ๊ฐ์๋ฅผ ์๊ฐ๋ณด๋ค ๋ง์ด ๋ฃ์ง ๋ชปํ๋ฏ ํ๋ค. ์ฌ์ด ๋จ๊ณ์ด์ง๋ง ์ฝ์ง ์์ ์๊ณ ๋ฆฌ์ฆ~ ์ ๋ง ๋ค์ํ ํ์ด๋ฒ์ด ์๋ ๊ฒ ๊ฐ๋ค. ํฌ๋ ์คํธ ๊ธฐ๋กํ๋ค๊ฐ ๊น๋จน์ ๋ ์ด ๋ง์๋ค. ๋ณด์ํ ์ ๊ณต๋ถ ํจํด ์ ์ฐฉํ..
4์ 11์ผ ~ 18์ผ ํ ์ฃผ ํ๊ณ ์ด์ (17์ผ) ์ฌ๋ ธ์ด์ผ ํ๋๋ฐ ๊น๋นกํด์ ์ค๋ ์ฌ๋ฆฌ๋ ํ ์ฃผ ํ๊ณ . ํ์ตํ ๊ฒ HTML/CSS Grid์ ๋ํ ๊ฒ. ๋ค๋ง ์ฐ์ต์ด ๋ ํ์ํ๋ค. ๋ค์ด๋ฒ์ ์ฃผ๋ฌธํ์ด์ง๋ฅผ ํด๋ก ์ฝ๋ฉ ํด๋ณด๋ฉฐ Sass๋ฅผ ์ ํด๋ณด๊ณ ์๋ค. Sass๋ก css๋ฅผ ๋ง๋ค์ด ๋๊ฐ๋ ๊ณผ์ ์์ ์ปดํฌ๋ํธ๋ฅผ ์ชผ๊ฐ๋ณธ๋ค๊ฑฐ๋, flex์ ์ข ๋ ์ต์ํด ์ง๊ณ ์๋ค. JS ๋ฐฐ์ด์ ๋ค์ํ ๋ฉ์๋๋ฅผ ์จ๋ณด๊ณ ์๋ค. ๋ชจ๋ ์๋ฐ์คํฌ๋ฆฝํธ ๋ฅ๋ค์ด๋ธ๋ฅผ ์กฐ๊ธ์ฉ ์ฝ๊ณ ์๋ค. ํ์ฌ๋ ํจ์ ์ฑํฐ. ์๋ฃ๊ตฌ์กฐ/์๊ณ ๋ฆฌ์ฆ ์๊ณ ๋ฆฌ์ฆ์ ๋ณต์ก๋์ ๋ํด ๋ฐฐ์ ๋ค. ๊ธฐ์ด์ ์ธ ๋ฌธ์ ๋ค์ ์กฐ๊ธ์ฉ ํ์ด๋๊ฐ๊ณ ์๋ค. ๋๋์ ์๊ณ ๋ฆฌ์ฆ์ ์์ํ์ง๋ง ์๊ฐ๋ณด๋ค ์ด๋ ต๋ค. ๊ณต๋ถ์๊ฐ์ 6์๊ฐ ๋ด์ธ์ธ๋ฐ ์ข ๋ ๋๋ฆด ์ ์๋๋ก ํด๋ด์ผ๊ฒ ๋ค. ๊ธ์ ์ฐ๋ ๊ฒ์ด๋ , ์ฝ๋ฉ์ ํ๋ ๋ด ๋ฐฉ์๋๋ก ํด๊ฐ๋ ..
๋ธ๋ก๊ทธ๋ฅผ ์๋กญ๊ฒ ์ ๋ฆฌํ๋ฉฐ ๋ง์ง๋ ์์์ง๋ง, 100์ฌ๊ฐ๊ฐ ๋๋ ๊ธฐ๋ก์ฉ ํฌ์คํ ์ ๊ทธ๊ฐ ํด์์๋ค. ์๋ ๊ณผ ์ฌ์ด๋ฅผ ๊ฑฐ์ณ์ ์ผ๋ จ์ ์ฌ๊ฑด๋ค์ ๊ฒช์ผ๋ฉฐ ์ด๋ฐ ์ ๋ฐ ์๊ฐ์ด ๋ง์๋ค. ๊ทธ๊ฐ์ ์๊ฐ๋ค์ ๊ตฌ๊ตฌ์ ์ ๋์ด๋์ ์๋ ์์ง๋ง, ๊ฒฐ๋ก ์ '์๋ฌด๋๋ ์ฌ์ ๋นํ๋๊ฒ ์ข๊ฒ ๋ค'์๋ค. ๊ทธ๋์ ๋ช๋ช ํฌ์คํ ๋ง ๋จ๊ธฐ๊ณ ๋ชจ๋ ๋น๊ณต๊ฐ๋ก ๋๋ ธ๋ค. ์์ผ๋ก์ ๊ณํ ์ฌ์ค ๊ทธ๊ฐ ๋๋ถ๋ถ์ ํฌ์คํ ๋ค์ ๋ฐฐ์ด ์ ๋ณด๋ฅผ ์ ๋ฆฌํ๊ณ ๋์ดํ๋ ์์ด๋ผ ์๊ฐ๊ณผ ์ ์ฑ์ ๋ค์๋ค๊ณ ํ ์ ์๊ฒ ๋ค. ์์ผ๋ก๋ ๊ธ์ฐ๋ ์ญ๋๋ ๊ธธ๋ฌ๋ณผ๊ฒธ, ์ข ๋ ์ ์ฑ๋ค์ธ ๊ธ๋ก ์ ์ด๋ณด๊ณ ์ ํ๋ค. ๋ฌผ๋ก ์์ง ๊ฒฝํ์ด ๋ถ์กฑํ๋ ๋ถ์กฑํ ๊ฒ์ด ๋น์ฐํ๋ค! ์๋ฒฝํ์ง๋ ๋ชปํ๋๋ผ๋ ์์คํ ๊ธฐ๋ก์ด ๋ ์ ์๋๋ก ์ธ ์๊ฐ์ด๋ค. ํ๊ณ ๋ก๋ ์งฌ์งฌํ ์จ๋ด์ผ๊ฒ ๋ค. ๋ฌด์ธ๊ฐ ์ฐ๋ ํ์๋ฅผ ์ข์ํ๋ ๋งํผ, ๊พธ์คํ ํด๋ณด๋ ๊ฒ์ด ๋ชฉํ!
ํ ์ธ๊ธ์ก์ด ์ ์ฉ๋ ๊ฐ๊ฒฉ์ JSP์์ ์ผํํ์ํ์ฌ ๋ํ๋ด๊ณ ์ถ์๋ค. ๊ฒ์ ์ค JSTL์ fmt ํ๊ทธ๋ฅผ ํตํด ์ซ์ํ์ ์ ๋ํ ์กฐ์ ์ด ๊ฐ๋ฅํ๋ค๋ ๊ฒ์ ์๊ฒ ๋์๋ค. fmt:formatNumber ์ด ํ๊ทธ๋ ์ซ์๊ฐ์ ์ซ์, ํตํ, ํผ์ผํธ๋ก ๋ฐ๊พผ๋ค. ์ ์ฉ ์ฝ๋ ${l.lec_price - (l.lec_price* l.lec_sale)}์ ๐ ์ฐธ๊ณ https://treasurebear.tistory.com/43 JSTL ๊ธ์ก ํ์(์ธ์๋ฆฌ๋ง๋ค ์ผํ) jsp๋ก ํ๋ฉด์ ๊ทธ๋ฆฌ๊ณ ์๋๋ฐ, ๊ธ์ก์ ํ์ํด์ผ ๋์ ์ธ์๋ฆฌ๋ง๋ค ์ผํ(, comma)๋ฅผ ๋ฃ์ด์ฃผ๊ณ ์ถ์๋ค. 1,000,000์ ์ด๋ ๊ฒ! ๊ทธ๋์ tld๋ก ๋ง๋ค๊น.. script๋ก ๋ง๋ค๊น.. ๊ณ ๋ฏผํ๋ค๊ฐ, ์ฐพ์๋ณด๋ jstl์์ ๊ธฐ๋ฅ์ ์ treasurebear.tistory.com
HTML5์์ ์ ๊ณตํ๋ geolocation API๋ฅผ ํตํด ์์น ๊ฒ์์ ํ์ฉํ๋ฉด ํ์ฌ ์ขํ๋ฅผ ์ป์ด๋ธ๋ค. function getLocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(function(position) { let lon = position.coords.latitude; //์๋ let lat = position.coords.longitude; //๊ฒฝ๋ toAddress(lon,lat); }, function(error) { console.error(error); }, { enableHighAccuracy: false, maximumAge: 0, timeout: Infinity }); } } ์ฌ๊ธฐ์ ์ป..
์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์ด์ฉํ์ฌ ๋ฒํผ ํด๋ฆญ์ ํ์ฌ ํ์ด์ง์ URL์ ํด๋ฆฝ๋ณด๋์ ๋ณต์ฌํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ณ ์ถ์๋ค. function clipBoard(){ let dummy = document.createElement("input"); const url = location.href; document.body.appendChild(dummy); dummy.value = url; dummy.select(); document.execCommand("copy"); alert("URL์ ํด๋ฆฝ๋ณด๋์ ๋ณต์ฌํ์ต๋๋ค."); document.body.removeChild(dummy); } ํจ์ ์คํ์ ์์๋ก URL์ ๋ด๋ input์ ์์ฑํ๊ณ ๋ณต์ฌ ํ ์ญ์ ํ๋ค. document.execCommand("copy"); ํด๋ฆฝ๋ณด๋ ๋ณต์ฌ์ ํต..
์ปจํธ๋กค๋ฌ์ url, ์ฆ ์น์ฌ์ดํธ์์ ํ์ฌ ํ์ด์ง์ ํจ์ค๋ฅผ ์์๋ด๊ณ ์ถ์๋ค. let currentPathName = window.location.pathname; window.location.pathname ์ ํตํด ์ฌ๋ฌ์๋ฅผ ํฌํจํ ๋ท๋ถ๋ถ url์ ์ ์ ์๋ค. ์๋๋ ํ์ฌ ์์ฑ์ค์ธ ํฌ์คํธ์ ํจ์ค.
localStorage ๋ก์ปฌ ์คํ ๋ฆฌ์ง ๋ธ๋ผ์ฐ์ ๋ด์ ํค-๊ฐ์ ์์ผ๋ก ํ์ฌ ๊ฐ์ ์ ์ฅํ๋ค. ๋ธ๋ผ์ฐ์ ๊ฐ ๋ค์ ๋ซํ ๋ค ๋ค์ ์คํ๋์ด๋ ๊ฐ์ด ์ ์ง๋๋ค. ํค-๊ฐ์ ํญ์ ๋ฌธ์์ด์ด์ด์ผ ํ๋ค. ๋ ๋๋ฉ์ธ์ด๋ ํฌํธ, ํ๋กํ ์ฝ์ด ๊ฐ๋ค๋ฉด ๋์ผํ ๋ชจ๋ ์ฐฝ์์ ๊ณต์ ๋๋ค. ๋ก์ปฌ์คํ ๋ฆฌ์ง์ ๊ธธ์ด ํ์ฌ ์ ์ฅ๋์ด์๋ ๋ฐ์ดํฐ์ ๊ฐ์๋ฅผ ์ ์ ์๋ค. const localLength = localStorage.length; localStorage.setItem ๋ก์ปฌ์คํ ๋ฆฌ์ง์ ๊ฐ์ ์ถ๊ฐํ๋ค. localStorage.setItem(keyword); ํค ๊ฐ ์ ์ฒด ์๊ธฐ for๋ฌธ์ ํตํด ๋ก์ปฌ์คํ ๋ฆฌ์ง์ ์ธ๋ฑ์ค์ ํด๋นํ๋ ํค์ ์ ๊ทผํ์ฌ localStorage.getItem(key) ๋ฅผ ํตํด ํค์ ๊ฐ์ ์ ์ ์๋ค. for (let i = 0; i
Comment