์ ์ฒด ๊ธ271 [axios] axios 1 axios๋? ๋ธ๋ผ์ฐ์ ์ node.js์์ ์ฌ์ฉํ ์ ์๋ Promise ๊ธฐ๋ฐ HTTP ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํน์ง ๋ธ๋ผ์ฐ์ ๋ฅผ ์ํด XMLHttpRequests ์์ฑ node.js๋ฅผ ์ํด http ์์ฒญ ์์ฑ Promise API๋ฅผ ์ง์ ์์ฒญ ๋ฐ ์๋ต ์ธํฐ์ ํธ ์์ฒญ ๋ฐ ์๋ต ๋ฐ์ดํฐ ๋ณํ ์์ฒญ ์ทจ์ JSON ๋ฐ์ดํฐ ์๋ ๋ณํ XSRF๋ฅผ ๋ง๊ธฐ์ํ ํด๋ผ์ด์ธํธ ์ฌ์ด๋ ์ง์ ์ค์น npm install axios ์ฌ์ฉ ์์ // POST ์์ฒญ ์ ์ก axios({ method: 'post', url: '/user/12345', data: { firstName: 'Fred', lastName: 'Flintstone' } }); // node.js์์ GET ์์ฒญ์ผ๋ก ์๊ฒฉ ์ด๋ฏธ์ง ๊ฐ์ ธ์ค๊ธฐ axios({ method: 'ge.. 2023. 1. 21. [JavaScript] Event-onFocus, onBlur focus, blur? //์์ ์ฝ๋ ์ด๋ฉ์ผ: focus ์ด๋ฒคํธ๋ ์์๊ฐ ํฌ์ปค์ค๋ฅผ ๋ฐ์ ๋, blur ์ด๋ฒคํธ๋ ํฌ์ปค์ค๋ฅผ ์์ ๋ ๋ฐ์ blur ํธ๋ค๋ฌ์์ ํ๋์ ์ด๋ฉ์ผ์ด ์ ์ ๋ ฅ๋์๋์ง ํ์ธํ๊ณ , ์ ์ ๋ ฅ๋์ง ์์ ๊ฒฝ์ฐ์ ์๋ฌ๋ฅผ ๋ณด์ฌ์ค focus ํธ๋ค๋ฌ์์๋ ์๋ฌ ๋ฉ์ธ์ง๋ฅผ ์จ๊น focus์ blur ์ด๋ฒคํธ๋ ๋ฒ๋ธ๋ง ๋์ง ์์. ์บก์ฒ๋ง์ด๋ focusin ,focusout ์ ์ฌ์ฉํ๋ฉด ์ด๋ฒคํธ ์์ ํจ๊ณผ๋ฅผ ๋ณผ ์ ์์ ํ์ฌ ํฌ์ปค์ค๋ ์์๋ document.activeElement๋ฅผ ํตํด ํ์ธํ ์ ์์ focus ๊ฐ๋ฅํ HTML์์ ๋ํํ ์์ a button details input select textarea ์ด์ธ์ ์์๋ ๋น๋ํํ ์์๋ก ์นญํจ. ๐ก ๋น๋ํํ ์์์๋ ๊ฐ์ ๋ก tabindex๋ฅผ ์ฌ์ฉํด ํฌ์ปค์ฑ.. 2023. 1. 20. [baekjoon]python #5635 ์์ผ [baekjoon]python #5635 ์์ผ https://www.acmicpc.net/problem/5635 5635๋ฒ: ์์ผ ์ด๋ค ๋ฐ์ ์๋ ํ์๋ค์ ์์ผ์ด ์ฃผ์ด์ก์ ๋, ๊ฐ์ฅ ๋์ด๊ฐ ์ ์ ์ฌ๋๊ณผ ๊ฐ์ฅ ๋ง์ ์ฌ๋์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. www.acmicpc.net import sys input = sys.stdin.readline n = int(input()) #๋์ ๋๋ฆฌ ์์ฑ birth={} for _ in range(n): #๊ณต๋ฐฑ ์ ๊ฑฐ๋ฅผ ์ํด strip() #์ด๋ฆ,์ผ,์,๋ name,d,m,y = map(str,input().strip().split(' ')) #ํ์๋ฆฌ ์ ์์ 0๋ถ์ด๊ธฐ if len(d)==1: d='0'+d if len(m)==1: m='0'+m #๋์ ๋๋ฆฌ์ ์ถ๊ฐ bir.. 2023. 1. 20. [npm].npmrc npmrc ํ์ผ์ด๋? ๐ก npm์์ ์ค์ ์ ์ ์ฅํด๋๋ ํ์ผ ๋ด์ฅ(builtin), ์ ์ญ(global), ์ฌ์ฉ์(user), ํ๋ก์ ํธ(project) 4๊ฐ์ง ๋ฒ์์ npmrc ํ์ผ์ด ์กด์ฌ ๋ด์ฅ ์ค์ npm์ด ์ค์น๋ ๊ฒฝ๋ก์ ์๋ npmrc ํ์ผ์ ๋ช ์๋จ ๋ชจ๋ ๊ธฐ๋ณธ ์ค์ ์ ๋ด๊ณ ์์ ์ ์ญ ์ค์ ๊ฐ์ ์ปดํจํฐ๋ฅผ ์ฌ์ฉํ๋ ๋ค๋ฅธ ์ฌ์ฉ์์ ๋ชจ๋ ํ๋ก์ ํธ์ ๊ด๋ฒ์ํ๊ฒ ์ ์ฉ ์ผ๋ฐ์ ์ผ๋ก ์ ๊ฑด๋ค์ง ์์ ๋ณดํต, ์ฌ์ฉ์ ๋ฒ์์ ํ๋ก์ ํธ ๋ฒ์์์ npmrc ํ์ผ์ ๋ค๋ฃธ ⇒ํ์ผ ๋ช ์์ . ์ ๋ถ์ฌ ์จ๊ธด ํ์ผ๋ก ์ฌ์ฉ ์ฌ์ฉ์ ๋ฒ์ ์ด์ ์ฒด์ ์ ์ฌ์ฉ์ ํ(home) ๋๋ ํ ๋ฆฌ์ ์์น ํ๋ก์ ํธ ๋ฒ์ ํ๋ก์ ํธ ์ต์์(root) ๋๋ ํ ๋ฆฌ์ ์์น ํ๋ก์ ํธ ๋ฒ์๊ฐ ์ฌ์ฉ์ ๋ฒ์๋ณด๋ค ์ข์ ⇒ ํ๋ก์ ํธ ์ค์ ์ด ์ฌ์ฉ์ ์ค์ ๋ณด๋ค ์ฐ์ ์ npm confi.. 2023. 1. 19. [React] React Hook API Hook ๊ฐ์ Hook์ class๋ฅผ ์์ฑํ์ง ์๊ณ ๋ state์ ๋ค๋ฅธ React์ ๋ค๋ฅธ ๊ธฐ๋ฅ๋ค์ ์ฌ์ฉํ ์ ์๊ฒ ํด์ค Hook์ ๊ณ์ธต์ ๋ณํ ์์ด ์ํ ๊ด๋ จ ๋ก์ง์ ์ฌ์ฌ์ฉํ ์ ์๋๋ก ๋์์ค ๊ธฐ๋ณธ Hook useState useEffect useContext ์ถ๊ฐ Hooks useReducer useCallback useMemo useRef useImperativeHandle useLayoutEffect useDebugValue useDeferredValue useTransition useId library hooks useSyncExternalStore useInsertionEffect ๐State Hook ์ฌ๋ฌ state ๋ณ์ ์ ์ธํ๊ธฐ ํ๋์ ์ปดํฌ๋ํธ ๋ด์์ state hook์ ์ฌ๋ฌ๊ฐ ์ฌ์ฉํ ์ .. 2023. 1. 18. [JavaScript] ๋น๋๊ธฐ ๋๊ธฐ ์ฒ๋ฆฌ์ ๋น๋๊ธฐ ์ฒ๋ฆฌ JavaScript ์์ง ์ฑ๊ธ ์ค๋ ๋(signle thread) ๋ฐฉ์ cf. ๋ธ๋ผ์ฐ์ ๋ ๋ฉํฐ ์ค๋ ๋๋ก ๋์! ํ ๋ฒ์ ํ๋์ ํ์คํฌ๋ง ์คํ ์ฒ๋ฆฌ์ ์๊ฐ์ด ๊ฑธ๋ฆฌ๋ ํ์คํฌ๋ฅผ ์คํํ๋ ๊ฒฝ์ฐ ๋ธ๋กํน(์์ ์ค๋จ)์ด ๋ฐ์ ๋๊ธฐ ์ฒ๋ฆฌ ๋ฐฉ์ ๐ก ํ์ฌ ์คํ์ค์ธ ํ์คํฌ๊ฐ ์ข ๋ฃํ ๋ ๊น์ง ๋ค์์ ์คํ๋ ํ์คํฌ๊ฐ ๋๊ธฐํ๋ ๋ฐฉ์ ํ์คํฌ๋ฅผ ์์๋๋ก ํ๋์ฉ ์ฒ๋ฆฌํ๋ฏ๋ก ์คํ ์์๊ฐ ๋ณด์ฅ๋จ ์์ ํ์คํฌ๊ฐ ์ข ๋ฃํ ๋๊น์ง ์ดํ ํ์คํฌ๋ค์ด ๋ธ๋กํน ๋จ /* ๋๊ธฐ ์ฒ๋ฆฌ ๋ฐฉ์ * ํ์ฌ ์คํ ์ค์ธ ํ์คํฌ๊ฐ ์ข ๋ฃํ ๋ ๊น์ง ๋ค์์ ์คํ๋ ํ์คํฌ๊ฐ ๋๊ธฐํ๋ ๋ฐฉ์ */ //ํจ์ sleep์ delay๊ฐ ๊ฒฝ๊ณผํ ํ์ ์ฝ๋ฐฑํจ์(func) ํธ์ถ function sleep(func, delay){ //Date.now()๋ ํ์ฌ ์๊ฐ์ .. 2023. 1. 17. [JavaScript] API API ์์คํ ์ด ๋ง๋ค์ด ๋์ ์๋น์ค ์ฐฝ๊ตฌ REST API REpresentational State Transfer ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ์ฃผ๊ณ ๋ฐ๋ ๋ฉ์์ง(๋ฐ์ดํฐ) ํ์ HTTP ๋ฉ์๋(POST, GET, PUT, DELETE)๋ฅผ ํตํด ํด๋น ์์์ ๋ํ CRUD๋ฅผ ์ ์ฉ JSON Server๋ฅผ ์ด์ฉํ REST API ์ค์ต 1. JSON Server ์ค์น mkdir json-server-exam && cd json-server-exam npm init -y npm install json-server --save-dev 2. db.json ํ์ผ ์์ฑ /json-server-exam/db.json { "todos":[ { "id":1, "content":"HTML", "completed":true }, { "id".. 2023. 1. 16. [JavaScript] AJAX & JSON AJAX Asynchronous JavaScript And XML (๋น๋๊ธฐ์ JavaScript์ XML) ์๋ฒ์ ํต์ ํ๊ธฐ ์ํด XMLHttpRequest ๊ฐ์ฒด๋ฅผ ํ์ฉ JSON, XML, HTML ๊ทธ๋ฆฌ๊ณ ์ผ๋ฐ ํ ์คํธ ํ์ ๋ฑ์ ํฌํจํ ๋ค์ํ ํฌ๋งท์ ์ฃผ๊ณ ๋ฐ์ ์ ์์ [์ฐธ๊ณ ] AJAX์ X๊ฐ XML์ ์๋ฏธํ๊ธด ํ์ง๋ง, ์์ฆ์ ๋ ๊ฐ๋ฒผ์ด ์ฉ๋๊ณผ JavaScript์ ์ผ๋ถ๋ผ ๋ ์ฅ์ ๋๋ฌธ์ JSON์ ๋ ๋ง์ด ์ฌ์ฉํจ |ํน์ง ํ์ด์ง ์ ์ฒด๋ฅผ reload(์๋ก ๊ณ ์นจ)๋ฅผ ํ์ง ์๊ณ ์๋ ์ํ๋๋ “๋น๋๊ธฐ์ฑ” ์๋ฒ์ ์๋ต์ ๋ฐ๋ผ ์ ์ฒด ํ์ด์ง๊ฐ ์๋ ์ผ๋ถ๋ถ๋ง์ ์ ๋ฐ์ดํธ ํ ์ ์์ AJAX์ ์ฃผ์ ๋๊ฐ์ง ํน์ง์ ์๋์ ์์ ์ ํ ์ ์๊ฒ ํด์ค ํ์ด์ง ์๋ก ๊ณ ์นจ ์์ด ์๋ฒ์ ์์ฒญ ์๋ฒ๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๊ณ ์์ ์ ์ํ |X.. 2023. 1. 15. [React] React Life Cycle ; ๋ฆฌ์กํธ ์๋ช ์ฃผ๊ธฐ React๋? javascript ๋ผ์ด๋ธ๋ฌ๋ฆฌ React ํ์ผ๋ค์ ์ญํ index.js src ํด๋์ ํฌํจ ๋ฉ์ธ ํ๋ก๊ทธ๋จ HTML ํ ํ๋ฆฟ ๋ฐ JavaScript์ ์ปดํฌ๋ํธ๋ฅผ ์กฐํฉํ๊ณ ๋ ๋๋งํด ์ค์ ํ์ App.js src ํด๋์ ํฌํจ ์ปดํฌ๋ํธ๋ฅผ ์ ์ํ๋ ํ๋ก๊ทธ๋จ ์ค์ ๋ก ํ๋ฉด์ ํ์๋๋ ๋ด์ฉ๋ฑ์ด ์ ์ index.html public ํด๋์ ์์ ๋ฉ์ธ ํ๋ก๊ทธ๋จ์ธ index.js์ ๋์๋๋ ๊ฒ HTML ํ ํ๋ฆฟ ํ์ผ ์ง์ ํ์๋๋ ๊ฒ์ ์๋๊ณ , index.js์ ์ํด ์ผ์ด๋ ๋ ๋๋ง ๊ฒฐ๊ณผ๊ฐ ํ์๋จ React Life Cycle React lifecycle ์ฉ์ด ์ฉ์ด ์ค๋ช ~ will ์ด๋ค ์์ ์ ์ํํ๊ธฐ ์ ์ ์คํ๋๋ ๋ฉ์๋์ ๊ด๋ จ๋ ์ฉ์ด ~ did ์ด๋ค ์์ ์ ์ํํ ์ดํ์ ์คํ๋๋ ๋ฉ์๋์ ๊ด๋ จ๋ ์ฉ์ด moun.. 2023. 1. 14. [Electron] Electron + React ์ฐ๋ํ๊ธฐ 1. React์ electron ์ ์ฉํ๊ธฐ https://2ssue.github.io/programming/electron-react/ #create-react-appํ electron ์ง์ด๋ฃ๊ธฐ npm init npm install create-react-app --save npx create-react-app {project_name} cd {project_name} npm install electron --save-dev ๋๋ ํ ๋ฆฌ ๊ตฌ์กฐ {project_name} โโโ public # ์ ์ ํ์ผ. react๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ํน๋ณํ ๋ณ๊ฒฝํ ๋ด์ฉ์ ์๋ค. โโโ src # javascript ํ์ผ. react routing, electron๋ก๋ฉ ๋ฑ์ ์์ ์ ์งํ. โ โโโ App.js โ โโโ in.. 2023. 1. 13. ์ด์ 1 2 3 4 5 6 7 8 ยทยทยท 28 ๋ค์