๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ

์˜ค๋Š˜์€ ์ฝ”๋“œ์ž‡ ๋ถ€ํŠธ์บ ํ”„์—์„œ ๋ฐฐ์šด fetch,ํ”„๋กœ๋ฏธ์Šค์— ๋Œ€ํ•œ ๋‚˜์˜ ์ง€์‹์„ ์‹œํ—˜ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๋‚˜๋Š” 404 ์‘๋‹ต์ด๋ฉด ๋‹น์—ฐํžˆ ๋ฆฌํ„ด๋˜๋Š” ํ”„๋กœ๋ฏธ์Šค ๊ฐ์ฒด๊ฐ€ rejected์ƒํƒœ๊ฐ€ ๋  ์ค„ ์•Œ์•˜๋‹ค. ํ•˜์ง€๋งŒ ์•„๋‹ˆ์—ˆ๋‹ค. https://stackoverflow.com/questions/39297345/fetch-resolves-even-if-404 fetch resolves even if 404? Using this code : fetch('notExists') // { if(!res.ok){ if(res.status === 404){ throw new Error(''); } } res.json(); }) //์ƒ๋žต .catch() ๋”ฐ๋ผ์„œ ๋”ฐ๋กœ ์—๋Ÿฌ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์œ„๊ฐ™์ด 404๋ฅผ ๋งŒ๋‚ฌ์„๋•Œ ์—๋Ÿฌ๋ฅผ ๋ฐœ์ƒ์‹œ์ผœ์•ผ ํ•œ๋‹ค. ์œ„๋Š” ์ฑ—์ง€..
ํ”„๋กœ์ ํŠธ ์‹œ์ž‘! ์™“์ธ ํ•ซ์ด๋ผ๋Š” ๋ง›์ง‘ ์ˆ™๋ฐ• ์—ฌํ–‰์ง€ ๋ฆฌ๋ทฐ์•ฑ ํ”„๋กœ์ ํŠธ ์ง„ํ–‰์—์„œ ํ”„๋ก ํŠธ์—”๋“œ ํŒ€์˜ ๋ฆฌ๋”๋ฅผ ๋งก๊ฒŒ ๋˜์—ˆ๋‹ค. ํŒ€์—๋Š” ๋ฐฑ์—”๋“œ 6๋ช…๊ณผ ๋‚˜๋ฅผ ํฌํ•จํ•˜์—ฌ ํ”„๋ก ํŠธ์—”๋“œ 2๋ช…์ด ์žˆ๋‹ค. ํ”„๋กœ์ ํŠธ๋ฅผ ์ฃผ๋„ํ•˜์‹œ๋Š” ๋ถ„์˜ ๊ถŒ์œ ๋กœ ํ”„๋ก ํŠธ์—”๋“œ ํŒ€์˜ ๋ฆฌ๋”๋ฅผ ๋งก๊ฒŒ ๋˜์—ˆ๋‹ค. ๋ง‰๋ง‰ํ–ˆ๋˜ ๋ถ€๋ถ„ + ํ•ด๊ฒฐ ๋ง‰๋ง‰ํ–ˆ๋˜ ๋ถ€๋ถ„์€ ๋””์ž์ด๋„ˆ๊ฐ€ ์—†๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๋‹ค๋ฅธ ํ”„๋ก ํŠธ์—”๋“œ ํŒ€์›๊ณผ ๊ฐœ๋ฐœ์„ ์ง„ํ–‰ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์™€์ด์–ดํ”„๋ ˆ์ž„๊ณผ ๋””์ž์ธ์ด ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ์—ฌ๋Ÿฌ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋’ค์ง€๋ฉด์„œ ์—ฌํ–‰ ๋ฆฌ๋ทฐ์™€ ์–ด์šธ๋ฆด๋งŒํ•œ ๋””์ž์ธ ํ…œํ”Œ๋ฆฟ์„ ์ฐพ์•˜๋‹ค. ํ”ผ๊ทธ๋งˆ๋Š” ์ด์ „ ํ”„๋กœ์ ํŠธ์—์„œ ํ•œ ๋ฒˆ ์จ๋ณธ ์ ์ด ์žˆ์–ด์„œ ์ง์ ‘ ๋””์ž์ธ์„ ํ•˜์˜€๋‹ค. ๋‚ด๊ฐ€ ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ํ†ตํ•ด ์–ป๊ฒŒ ๋  ๊ฒƒ๋“ค 1. ์ด๋ฒˆ์—๋Š” AWS์— ํ”„๋ก ํŠธ๋ฅผ ๋ฐฐํฌํ•  ๊ฒƒ์ด๊ณ , CI/CD ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌ์ถ•ํ•  ๊ฒƒ์ด๋‹ค. 2. Daisy UI์™€ T..
React Icons ๋ผ๋Š” ์˜คํ”ˆ์†Œ์Šค React Icons๋ผ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ œ๊ณตํ•ด์ฃผ๋Š” ์ด์ ์— ๋งค๋ฃŒ๊ฐ€ ๋˜์–ด์žˆ์—ˆ๋‹ค. ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋‚˜๋Š” React-Icons์˜ ์ƒํƒœ๊ณ„์— ๊ธฐ์—ฌํ•˜๊ณ  ์‹ถ์€ ์š•์‹ฌ์ด ์ƒ๊ฒผ๋‹ค. ๋“œ๋””์–ด ๋‚ ๋ฆฐ ์ฒซ pr.. ์ €๊ธฐ.. merge ํ•ด์ฃผ์‹œ๋ฉด ์•ˆ ๋ ๊นŒ์š”? ๋‚ด ์ฒซ pr์€ react-icons ์›น์‚ฌ์ดํŠธ์— ๊ฒ€์ƒ‰ shorcut ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•œ ๊ฒƒ์ด์—ˆ๋‹ค. ๋งฅ์ด๋ฉด cmd + k, ๊ทธ ์™ธ๋Š” ctrl + k๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ๊ฒ€์ƒ‰ ์ฐฝ์ด ์ž๋™์œผ๋กœ focusing ๋˜๋„๋ก ๊ตฌํ˜„ํ–ˆ๋‹ค. ์ด๋Š” ๋‚ด๊ฐ€ ์ฐพ์€ ๊ธฐ์—ฌํฌ์ธํŠธ๋Š” ์•„๋‹ˆ๊ณ  Issue์— ์˜ฌ๋ผ์™€ ์žˆ์—ˆ๋‹ค. ๊ทผ๋ฐ ์ด์ƒํ•œ ๋ถ€๋ถ„์€ ์ด ๊ธฐ๋Šฅ์„ ๋‚˜ ํฌํ•จ 3๋ช…์ด๋‚˜ ๊ตฌํ˜„ ํ›„ pr์„ ๋ณด๋ƒˆ๋Š”๋ฐ ์•„๋ฌด๋Ÿฐ ํ”ผ๋“œ๋ฐฑ์ด ์—†์—ˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๋ฉ”์ธํ…Œ์ด๋„ˆ ๋ถ„๊ป˜์„œ ์ด ๊ธฐ๋Šฅ์ด ๋งˆ์Œ์— ๋“ค์ง€ ์•Š์œผ์‹ ๊ฐ€๋ณด๋‹ค๋ผ๊ณ  ๊ฐ€๋ณ๊ฒŒ ์ƒ๊ฐํ•˜๊ณ  ๋„˜๊ฒผ์ง€๋งŒ..
๐Ÿ’ก ํ˜„์žฌ ๋ ˆ๋ฒจ1์—์„œ ์ •๋‹ต๋ฅ  ์ œ์ผ ๋‚ฎ์€ ๋ฌธ์ œ ์ฒ˜์Œ ์‹œ๋„ํ–ˆ๋˜ ๋ฐฉ๋ฒ• function solution(bandage, health, attacks) { var answer = 0; let [prevAttackTime, prevDamage] = attacks[0]; attacks.shift(); dHealth = health; attacks.forEach(attack=>{ let [attackTime, damage] = attack; dHealth -= prevDamage; console.log(dHealth); if(attackTime - prevAttackTime >= bandage[0]){ dHealth += bandage[1] * (attackTime-prevAttackTime); dHealth += Ma..
์˜คํ”ˆ์†Œ์Šค ๊ธฐ์—ฌ์— ๊ด€์‹ฌ์„ ๊ฐ€์ง€๊ฒŒ ๋œ ์ด์œ  ๋‚ด๊ฐ€ ์˜คํ”ˆ์†Œ์Šค์— ๊ด€์‹ฌ์„ ๊ฐ€์ง€๊ฒŒ ๋œ ์ด์œ ๋Š” ์–ด๋–ค ์œ ํŠœ๋ธŒ๋ฅผ ๋ณด๊ณ  ๋‚˜์„œ ๋ถ€ํ„ฐ์˜€๋‹ค. ๊ดœ์ฐฎ์€ IT๊ธฐ์—…์— ์ทจ์งํ•˜๊ธฐ ์œ„ํ•ด์„œ ํ•œ๊ฐ€์ง€ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ ์ค‘์— ํ•˜๋‚˜๊ฐ€ ์˜คํ”ˆ์†Œ์Šค ๊ธฐ์—ฌ๋ผ๊ณ  ํ–ˆ๋‹ค. ๊ทธ ์œ ํŠœ๋ฒ„๋Š” 1๋งŒ๊ฐœ์˜ ์Šคํƒ€๊ฐ€ ์žˆ๋Š” ๋ ˆํฌ๋ฅผ ๊ธฐ์—ฌํ•˜๋ฉด ์ข‹๋‹ค๊ณ  ํ–ˆ์ง€๋งŒ ์ด๊ฑด ์‚ฌ์‹ค ๊ฐœ์ธ์ ์œผ๋กœ ์ค‘์š”ํ•˜์ง€๋Š” ์•Š์€ ๊ฒƒ ๊ฐ™๋‹ค. ์•”ํŠผ! ๊ทธ ์˜์ƒ์„ ๋ณด๊ณ  '์–ธ์  ๊ฐ„.. ๋‚˜๋„ ์˜คํ”ˆ์†Œ์Šค์— ๊ธฐ์—ฌํ•ด์•ผ๊ฒ ๋‹ค' ๋ผ๊ณ  ๋ง‰์—ฐํ•˜๊ฒŒ ์ƒ๊ฐํ–ˆ๋‹ค. ์‚ฌ์‹ค ์ง€๊ธˆ ์ƒ๊ฐํ•ด๋ณด๋ฉด ๊ทธ๋•Œ์˜ ์‹ค๋ ฅ์œผ๋กœ๋Š” ์ข€ ๊ฟˆ์— ๊ฐ€๊นŒ์šด ์–˜๊ธฐ์˜€์ง€๋งŒ ๋‚˜๋Š” ๊ฐ„์ ˆํ•˜๊ฒŒ ์ด ๋ชฉํ‘œ๋ฅผ ๋งˆ์Œ์— ํ’ˆ๊ณ  ์žˆ์—ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ๋งŽ์€ ์‚ฌ๋žŒ์ด ์“ฐ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๊ธฐ์—ฌ๋ฅผ ํ•œ๋‹ค๋Š” ๊ฒƒ์€ ๊ฐœ๋ฐœ์ž๋กœ์„œ ๊ฐ€์Šด์ด ๋›ฐ๋Š” ์ผ์ด์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์–ด๋–ค ์˜คํ”ˆ์†Œ์Šค์— ๊ธฐ์—ฌํ•˜๋ฉด ์ข‹์„๊นŒ? ๊ทธ๋ ‡๋‹ค๋ฉด ๋ฌด์ž‘์ • '๋‚˜๋Š” ์˜คํ”ˆ์†Œ์Šค์— ๊ธฐ์—ฌํ•ด์•ผ..
https://www.codetree.ai/missions/2/problems/non-overlapping-two-rectangles?&utm_source=clipboard&utm_medium=text ์ฝ”๋“œํŠธ๋ฆฌ | ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์ค€๋น„๋ฅผ ์œ„ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ •์„ ๊ตญ๊ฐ€๋Œ€ํ‘œ๊ฐ€ ๋งŒ๋“  ์ฝ”๋”ฉ ๊ณต๋ถ€์˜ ๊ฐ€์ด๋“œ๋ถ ์ฝ”๋”ฉ ์™•์ดˆ๋ณด๋ถ€ํ„ฐ ๊ฟˆ์˜ ์ง์žฅ ์ฝ”ํ…Œ ํ•ฉ๊ฒฉ๊นŒ์ง€, ๊ตญ๊ฐ€๋Œ€ํ‘œ๊ฐ€ ์—„์„ ํ•œ ์ปค๋ฆฌํ˜๋Ÿผ์œผ๋กœ ์ค€๋น„ํ•ด๋ณด์„ธ์š”. www.codetree.ai ์ด ๋ฌธ์ œ์˜ ์–ด๋ ค์›€ ์™„์ „ํƒ์ƒ‰์„ ์ง„ํ–‰ํ•˜๋ฉด ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์ง€๋งŒ ์„œ๋กœ ๋‹ค๋ฅธ ์ง์‚ฌ๊ฐํ˜•์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ€์žฅ ๋จผ์ € ๋– ์˜ค๋ฅธ naiveํ•œ ํ’€์ด๋ฒ•์ด for์˜ depth๊ฐ€ ๋งค์šฐ ๊นŠ์–ด์ง€๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. ์ด๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•˜๋ฉด ์ข‹์„์ง€ ํ•œ์ฐธ์„ ๊ณ ๋ฏผํ–ˆ๋‹ค.
ยท ์›น
http http๋Š” TCP/IP ๊ธฐ๋ฐ˜์˜ ํ†ต์‹  ํ”„๋กœํ† ์ฝœ๋กœ world wide web์—์„œ html file์ด๋‚˜ image file ๋“ฑ์„ ์ „๋‹ฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค. http ๋ช…์„ธ๋Š” ์–ด๋–ป๊ฒŒ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ผ์ง€ ์„œ๋ฒ„๋Š” ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์–ด๋–ป๊ฒŒ ์‘๋‹ต์„ ํ• ์ง€ ๊ตฌ์ฒดํ™” ์‹œํ‚จ๊ฒƒ์„ ๋งํ•œ๋‹ค. http์˜ ํŠน์ง• 3๊ฐ€์ง€ ์•Œ์•„๋ณด๊ธฐ 1. ๋น„์—ฐ๊ฒฐ์„ฑ: client๊ฐ€ server์—๊ฒŒ request๋ฅผ ๋ณด๋‚ด๊ณ  server๊ฐ€ client์—๊ฒŒ response๋ฅผ ์ฃผ๋ฉด ๊ทธ ๋‘˜๊ณผ์˜ ์—ฐ๊ฒฐ์€ ๋Š์–ด์ง„๋‹ค. ์ฆ‰, ํ•ญ์ƒ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ๋Š” ๋œป์ด๋‹ค. 2. media independent: ์–ด๋–ค ํƒ€์ž…์˜ ๋ฐ์ดํ„ฐ์ด๋“  ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ€ ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•„๋Š” ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ๋‹จ, ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์ ์ ˆํ•œ ๋งˆ์ž„ํƒ€์ž…์„ ๊ตฌ์ฒดํ™” ํ•ด์•ผ ํ•œ๋‹ค..
Node ๋ฒ„์ „ ๋•Œ๋ฌธ์— ์ƒ๊ธด ๋ฌธ์ œ์  ๋‹ค๋ฅธ ๋ถ„์ด ์ž‘์—…ํ•œ ๋ฆฌ์•กํŠธ ํ”„๋กœ์ ํŠธ๋ฅผ ๋‚ด ๋กœ์ปฌ์—์„œ ์‹คํ–‰์‹œ์ผœ์•ผ ํ–ˆ๋‹ค. ํ•˜์ง€๋งŒ, ๋‚ด node.js์˜ ๋ฒ„์ „์€ ์ตœ์‹  ๋ฒ„์ „์ด์—ˆ๊ณ  ๊ทธ ๋ถ„์€ 16๋ฒ„์ „์ด์—ˆ๋‹ค. ์šฐ๋ คํ–ˆ์ง€๋งŒ ์•„๋‹ˆ๋‚˜ ๋‹ค๋ฅผ๊นŒ "npm start"๋ฅผ ํ•˜๋‹ˆ "react-scripts" ๋ฅผ ์‹คํ–‰ํ•  ๋•Œ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ฒผ๋‹ค. ์ด๋ฅผ ์ข€ ์•Œ์•„๋ณด๋‹ˆ node์˜ ๋ฒ„์ „ ๋ฌธ์ œ๋ผ๊ณ  ํ•œ๋‹ค. nvm์„ ์‚ฌ์šฉํ•˜๋ฉด node.js์˜ ๋ฒ„์ „์„ ์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•˜์—ฌ nvm์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•ด์„œ ํ•ด๊ฒฐํ–ˆ๊ณ  ์ด๋ฅผ ํฌ์ŠคํŒ…ํ•˜๊ณ ์ž ํ•œ๋‹ค. NVM ์„ค์น˜ํ•˜๊ธฐ https://github.com/coreybutler/nvm-windows GitHub - coreybutler/nvm-windows: A node.js version management utility for Windows. Ir..
๊น€ํƒœ์ง„
'๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก (4 Page)