๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋ฐ˜์‘ํ˜•

js10

REPL์ด๋ž€? REPL REPL์ด๋ž€ READ-EVALUATION-PRINT-LOOP์˜ ์•ฝ์ž๋กœ ์‚ฌ์šฉ์ž๊ฐ€ ํŠน์ • ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ๊ทธ ์ฝ”๋“œ๋ฅผ ํ‰๊ฐ€ํ•˜๊ณ  ์ฝ”๋“œ์˜ ์‹คํ–‰๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•ด์ฃผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. REPL R : READ(์ฝ๋‹ค) E : Eval(ํ•ด์„ํ•˜๋‹ค) P : Print(๋ฐ˜ํ™˜ํ•˜๋‹ค) L : Loop(๋ฐ˜๋ณตํ•˜๋‹ค) => ์ž…๋ ฅํ•œ ์ฝ”๋“œ๋ฅผ ์ฝ๊ณ , ํ•ด์„ํ•˜๊ณ , ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ , ์ข…๋ฃŒํ•  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต ์‚ฌ์ดํŠธ ์ถ”์ฒœ (REPLIT) ์—ฌ๋Ÿฌ ์–ธ์–ด๋“ค์„ ์ง€์›ํ•˜๋ฉฐ RUN ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ด ์‹คํ–‰ํ•˜๋ฉด ์˜ค๋ฅธ์ชฝ ํ™”๋ฉด์—์„œ ๋ฐ”๋กœ ์‹คํ–‰๊ฒฐ๊ณผ๋ฅผ ํ™•์ธ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ ๊ฐ„๋‹จํ•œ ๊ธฐ๋Šฅ๋“ค์„ ๋น ๋ฅด๊ฒŒ ํ…Œ์ŠคํŠธํ•ด๋ณด๊ณ  ์‹ถ์„ ๋•Œ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Replit: The software creation platform. IDE, AI, and Deployments Run code live in yo.. 2023. 12. 11.
'addEventListener is not a function' ์—๋Ÿฌ ํ•ด๊ฒฐ ๋ฌธ์ œ ์›์ธ getElementByClassName์œผ๋กœ ๊ฐ€์ ธ์˜จ ๊ฐ’์ด ๋ฐฐ์—ด์ด์—ˆ๋Š”๋ฐ ๋ฐฐ์—ด์˜ ๋ช‡ ๋ฒˆ์งธ ์š”์†Œ์— ์ด๋ฒคํŠธ๋ฆฌ์Šค๋„ˆ๋ฅผ ์ ์šฉํ•  ๊ฒƒ์ธ์ง€ ํŠน์ •ํ•˜์ง€ ์•Š์•„ ์ƒ๊ธด ๋ฌธ์ œ์˜€๋‹ค. ํ•ด๊ฒฐ ๋ฐฐ์—ด์˜ ๋ชจ๋“  ์š”์†Œ์— ์ด๋ฒคํŠธ๋ฅผ ๊ฑธ๊ณ  ์‹ถ๋‹ค๋ฉด for loop ๋ฐฐ์—ด์˜ ํŠน์ • ์š”์†Œ์— ์ด๋ฒคํŠธ๋ฅผ ๊ฑธ๊ณ  ์‹ถ๋‹ค๋ฉด index๋ฅผ ํŠน์ •ํ•ด์ค€๋‹ค. ์ฐธ๊ณ  ๋ธ”๋กœ๊ทธ https://developer0809.tistory.com/153 2023. 8. 20.
npm ์—๋Ÿฌ : > 'npm'์€(๋Š”) ๋‚ด๋ถ€ ๋˜๋Š” ์™ธ๋ถ€ ๋ช…๋ น, ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ๊ทธ๋žจ, ๋˜๋Š” ๋ฐฐ์น˜ ํŒŒ์ผ์ด ์•„๋‹™๋‹ˆ๋‹ค. ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ๋ฌธ์ œ ์ƒํ™ฉ js template engine ์ธ pug๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด $ npm install pugํ•ด๋‹น ๋ช…๋ น์–ด๋ฅผ intelliJ terminal์— ์ž…๋ ฅํ–ˆ๋”๋‹ˆ npm ์—๋Ÿฌ : > 'npm'์€(๋Š”) ๋‚ด๋ถ€ ๋˜๋Š” ์™ธ๋ถ€ ๋ช…๋ น, ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ๊ทธ๋žจ, ๋˜๋Š” ๋ฐฐ์น˜ ํŒŒ์ผ์ด ์•„๋‹™๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ์ด์œ ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์ €์˜ ๊ฒฝ์šฐ node.js๊ฐ€ ์•„์ง ์„ค์น˜๋˜์ง€ ์•Š์•„ ๋ช…๋ น์–ด๋ฅผ ์ธ์‹ํ•˜์ง€ ๋ชปํ•ด ๋ฐœ์ƒํ•œ ์˜ค๋ฅ˜์˜€์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ ํ•ด๊ฒฐ node,js ์„ค์น˜ https://nodejs.org/ko/download ํ•ด๋‹น ๋งํฌ์— ๋“ค์–ด๊ฐ€ ๋ณธ์ธ์˜ ์šด์˜์ฒด์ œ์— ๋งž๋Š” msi๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” window 64 bit ๋ฒ„์ „์„ ๋‹ค์šด๋กœ๋“œ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. ํŒŒ์ผ ๊ฒฝ๋กœ ํ™•์ธ ๋ฐ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ • node.js ๊ธฐ๋ณธ ์„ค์น˜ .. 2023. 7. 28.
AJAX๋ž€? AJAX์˜ ๊ฐœ๋… ์˜ค๋Š˜์€ AJAX์˜ ๊ฐœ๋…๊ณผ ์žฅ๋‹จ์ ์— ๋Œ€ํ•œ ํฌ์ŠคํŒ…์„ ํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. AJAX๋ž€? (Asynchronous Javascript And XMl) AJAX๋ž€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ด์šฉํ•ด ์„œ๋ฒ„,๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋น„๋™๊ธฐ ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตํ™˜ํ•  ์ˆ˜ ์žˆ๋Š” ํ†ต์‹ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. AJAX ์‚ฌ์šฉ์‹œ ์„œ๋ฒ„์™€ ํ†ต์‹ ํ•˜๊ธฐ ์œ„ํ•ด์„œ XMLHttpRequest๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ํŠน์ง•์ด ์žˆ์Šต๋‹ˆ๋‹ค. JSON, XML, HTML, TXTํ˜•์‹ ๋“ฑ ๋‹ค์–‘ํ•œ ํฌ๋งท์„ ์ฃผ๊ณ  ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. AJAX์˜ ๊ฐ€์žฅ ํฐ ํŠน์ง•์€ ์ด๋ฆ„์—์„œ๋„ ์ฐพ์•„๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด ๋น„๋™๊ธฐ์„ฑ(Asynchronous)์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋™๊ธฐ: ํ•œ ๊ฐœ์˜ ๋ฐ์ดํ„ฐ ์š”์ฒญ์— ๋Œ€ํ•œ ์„œ๋ฒ„์˜ ์‘๋‹ต์ด ์ด๋ฃจ์–ด์งˆ ๋•Œ๊นŒ์ง€ ๋‹ค๋ฅธ ์š”์ฒญ์€ ๋Œ€๊ธฐ ์ƒํƒœ ๋น„๋™๊ธฐ: ๋ฐ์ดํ„ฐ ์š”์ฒญ์˜ ์ˆœ์„œ์— ์ƒ๊ด€์—†์ด ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๊ฐ€ ํ•œ๊บผ๋ฒˆ์— ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐฉ์‹ A.. 2023. 7. 25.
์ œ์ด์ฟผ๋ฆฌ $(document).ready(function(){}); jQuery์—์„œ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋ฌธ์„œ ์ค€๋น„ ์‹œ ๋‹ค์Œ ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•˜๋ผ๋Š” ์˜๋ฏธ์˜ ๋‹ค์Œ ์ฝ”๋“œ๋ฅผ ์ ์–ด์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ์ฝ”๋“œ๋ฅผ ๊ฐ„๋žตํ•˜๊ฒŒ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 2023. 7. 24.
JS์—์„œ null, undefined, empty ์ฒดํฌํ•˜๋Š” ๋ฐฉ๋ฒ• javascript์—์„œ๋Š” null,undefined ,0 ์„ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌํ• ๊นŒ์š”? ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ƒํ™ฉ ์˜ˆ์‹œ๋ฅผ ๋“ค์–ด ์ดํ•ดํ•ด๋ณด๋Š” ์‹œ๊ฐ„์„ ๊ฐ–๋„๋ก ํ•ด์š”. ํ•œ ์ฝ”๋“œ ๋ธ”๋Ÿญ ์•ˆ์— ์žˆ๋Š” ์ฝ”๋“œ๋“ค์€ ๋ชจ๋‘ ๊ฐ™์€ ์—ญํ• ์„ ํ•œ๋‹ต๋‹ˆ๋‹ค. 1. ๊ฐ’์ด 0๊ณผ ์ผ์น˜ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ if( value === 0 ) if( !value ) 2. ๊ฐ’์ด 0๋ณด๋‹ค ํฐ์ง€ ํ™•์ธํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ if( value > 0 ) if ( value ) 3. undefined,null,๊ณต๋ฐฑ๋ฌธ์ž๋ฅผ ํŒ๋ณ„ํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ obj === undefined obj === null obj === "" obj === 0 !obj 4. ๋ฌธ์ž์—ด์ด ๋น„์–ด์žˆ์ง€ ์•Š๋‹ค๋Š” ๊ฒƒ์„ ํŒ๋ณ„ํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ if ( string !== "" ) if ( string ) 5. 4๋ฒˆ๊ณผ ๋ฐ˜๋Œ€๋˜๋Š” ๊ฒฝ์šฐ if.. 2023. 7. 19.
JAVASCRIPT์—์„œ ๋‚ ์งœ, ์‹œ๊ฐ„์„ ์–ป๊ฑฐ๋‚˜ ์ƒ์„ฑํ•˜๋Š” ๋ฒ• ์•ˆ๋…•ํ•˜์„ธ์š”. ์˜ค๋Š˜์€ JAVASCRIPT์—์„œ ๋‚ ์งœ, ์‹œ๊ฐ„์„ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ํฌ์ŠคํŒ…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. JAVASCRIPT์—์„œ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ์–ป๊ฑฐ๋‚˜ ์ƒ์„ฑํ•  ๋Œ€ Date ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. Date ๊ฐ์ฒด ์ƒ์„ฑ ์˜ค๋Š˜ ๋‚ ์งœ๋ฅผ ์–ป๊ธฐ ์œ„ํ•ด ์ƒ์„ฑ์ž๋กœ Date ๊ฐ์ฒด๋ฅผ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค. var today = new Date(); ์ƒ์„ฑ๋œ Date ๊ฐ์ฒด๋Š” ํ˜„์žฌ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๋‹ด๊ณ  ์žˆ์œผ๋ฉฐ ๊ทธ๋ฆฌ๋‹ˆ์น˜ ํ‘œ์ค€์‹œ๋กœ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค. ๋ง‰๊ฐ„ TMI > GMT (Greenwich Mean Time) ๋”๋ณด๊ธฐ ๋Ÿฐ๋˜์„ ๊ธฐ์ ์œผ๋กœ ํ•˜๊ณ , ์›ฐ๋งํ„ด์— ์ข…์ ์œผ๋กœ ์„ค์ •๋˜๋Š” ํ˜‘์ • ์„ธ๊ณ„์‹œ์˜ ๊ธฐ์ค€ ์‹œ๊ฐ„๋Œ€๋ฅผ GMT๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋ณธ์ดˆ ์ž์˜ค์„ ์„ ๊ธฐ์ค€์œผ๋กœ ์„ธ๊ณ„ ์‹œ๊ฐ„์„ ๊ณ„์‚ฐํ•˜๊ฒŒ ๋˜๋Š”๋ฐ์š”. ์ง€๊ตฌ๋Š” 360๋„ ์ด๊ณ  24์‹œ๊ฐ„๋งˆ๋‹ค 1ํšŒ์ „ ํ•˜๋ฏ€๋กœ 360๋„ / 24์‹œ๊ฐ„ = 15 ์ฆ‰, 15๋„ ๋งˆ๋‹ค 1์‹œ.. 2023. 7. 11.
NODE.JS ๋ž€? NODE.JS์˜ ๊ฐœ๋…๊ณผ ์žฅ๋‹จ์  ์•ˆ๋…•ํ•˜์„ธ์š”. ์˜ค๋Š˜์€ Node.js์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์™”์–ด์š”. ์ข‹์€ ๊ธฐํšŒ๊ฐ€ ์ƒ๊ฒจ Node.js๋ฅผ ๊ฐ™์ด ํ•™์Šตํ•  ์Šคํ„ฐ๋””์›์„ ๊ตฌํ–ˆ๊ฑฐ๋“ ์š”. ์•„์ง js๋„ ์ต์ˆ™ํ•˜์ง€ ์•Š์€๋ฐ Node.js๋ฅผ ๋ฐฐ์šฐ๋ ค๋‹ˆ ๋ง‰๋ง‰ํ•˜๊ธด ํ•˜๋„ค์š”. ๊ทธ๋ž˜๋„ ๋ฐฐ์›Œ๋†“์œผ๋ฉด ์ข‹์œผ๋‹ˆ ์—ด์‹ฌํžˆ ๊ณต๋ถ€ํ•ด๋ด์•ผ๊ฒ ์–ด์š”. ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” Node.js์˜ ๊ฐœ๋…๊ณผ ์žฅ๋‹จ์ ์— ๋Œ€ํ•ด ์ •๋ฆฌํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. Node.js์˜ ๊ฐœ๋… Node.js์˜ ๋œป Node.js๋Š” Chrome V8 JavaScript ์—”์ง„์œผ๋กœ ๋นŒ๋“œ๋œ JavaScript ๋Ÿฐํƒ€์ž„์ด์ž ์„œ๋ฒ„ ์‚ฌ์ด๋“œ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. 2009๋…„์— Ryan Dahi์— ์˜ํ•ด ๊ฐœ๋ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Node.js์˜ ๋“ฑ์žฅ๋ฐฐ๊ฒฝ Node.js ๋“ฑ์žฅ ์ „ Javascript๋Š” ์›น์—์„œ๋งŒ ๋™์ž‘ํ•œ๋‹ค๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. Node.js๋Š” Javascript๋ฅผ ์›น ๋ธŒ๋ผ์šฐ์ € ๋ฟ๋งŒ .. 2023. 7. 11.
JSTL ๊ฐœ๋… ๋ฐ ์‚ฌ์šฉ๋ฒ• ์ž๋ฐ” ์„œ๋ฒ„ ํŽ˜์ด์ง€ ํ‘œ์ค€ ํƒœ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ (JSTL)์ด๋ž€? JSTL(Java Pages Standard Tag Library)์ด๋ž€ JSTL์˜ ํ™•์žฅํƒœ๊ทธ๋กœ, JSP์•ˆ์— ์ž๋ฐ”์ฝ”๋“œ์™€ HTML ์ฝ”๋“œ๊ฐ€ ์„ž์ด๋ฉด ์ฝ”๋“œ๋ฅผ ์ดํ•ดํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•˜๊ธฐ ์–ด๋ ค์›Œ์ง€๋Š” ๋ฌธ์ œ๋ฅผ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด ๋“ฑ์žฅํ–ˆ๋‹ค. JSP ํŽ˜์ด์ง€์—์„œ ์กฐ๊ฑด๋ฌธ, ๋ฐ˜๋ณต๋ฌธ ์ฒ˜๋ฆฌ๋“ฑ์„ HTML TAG๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. โ€ป EL (Expression Language) : JSP 2.0๋ถ€ํ„ฐ ์ถ”๊ฐ€๋œ ๊ฐœ๋…์œผ๋กœ JSP ๋‚ด์˜ ์ž๋ฐ” ์ฝ”๋“œ๋ฅผ ๋Œ€์ฒดํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์–ธ์–ด์ด๋‹ค. JSTL์˜ ์žฅ์  ๋น ๋ฅธ ๊ฐœ๋ฐœ: ์ž๋ฐ”์ฝ”๋“œ ๋Œ€์‹  ํƒœ๊ทธ๋ฅผ ์ด์šฉํ•ด ๊ฐ„๋‹จํžˆ JSP๋ฅผ ๊ตฌ์„ฑ ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ: ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€์—์„œ JSTL ํƒœ๊ทธ ์‚ฌ์šฉ ๊ฐ€๋Šฅ ๋‚ ์งœ, ์‹œ๊ฐ„, ์ˆซ์ž FORM ์„ค์ • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค CRUD ๊ธฐ๋Šฅ JSTL ํƒœ๊ทธ ์ข…๋ฅ˜ EL.. 2023. 5. 24.
[JS] JAVASCRIPT ๊ธฐ์ดˆ ๊ฐœ๋… ๋ชจ์Œ 1. 'Hello' : ๋ฌธ์ž(String) ๋ฐ์ดํ„ฐ 2. 123: ์ˆซ์ž(number) ๋ฐ์ดํ„ฐ 3. true / false : ๋ถˆ๋ฆฐ(boolean) ๋ฐ์ดํ„ฐ 4. null : Null๋ฐ์ดํ„ฐ 5. {} {ํ‚ค1: ๊ฐ’1, ํ‚ค2 : ๊ฐ’2} : ๊ฐ์ฒด(Object) ๋ฐ์ดํ„ฐ, Key: value ํ˜•ํƒœ๋กœ ๋ฐ์ดํ„ฐ ์ €์žฅ ex) const user = { name: 'java', age: 85 } console.log(user.name) console.log(user[name]) ์  ํ‘œ๊ธฐ๋ฒ• ํ˜น์€ ๋Œ€๊ด„ํ˜ธ ํ‘œ๊ธฐ๋ฒ•์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉ 6. [] [๊ฐ’1, ๊ฐ’2, ๊ฐ’3] : ๋ฐฐ์—ด(Array) ๋ฐ์ดํ„ฐ, ๋ฐ์ดํ„ฐ๋ฅผ ๋‚˜์—ดํ•ด์„œ ์ €์žฅ ex) const fruits = ['apple', 'banana'] console.log(fruits[0]) con.. 2023. 2. 16.
๋ฐ˜์‘ํ˜•