๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • What would life be If we had no courage to attemp anything?

์ „์ฒด ๊ธ€292

[JavaScript] async / await 2 ์—๋Ÿฌ ์ฒ˜๋ฆฌ ์—๋Ÿฌ๋Š” ํ˜ธ์ถœ์ž(caller) ๋ฐฉํ–ฅ์œผ๋กœ ์ „ํŒŒ ์ฝœ ์Šคํƒ์˜ ์•„๋ž˜ ๋ฐฉํ–ฅ(์‹คํ–‰ ์ค‘์ธ ์‹คํ–‰ ์ปจํ…์ŠคํŠธ๊ฐ€ ํ‘ธ์‹œ๋˜๊ธฐ ์ง์ „์— ํ‘ธ์‹œ๋œ ์‹คํ–‰ ์ปจํ…์ŠคํŠธ ๋ฐฉํ–ฅ)์œผ๋กœ ์ „ํŒŒ ํ•˜์ง€๋งŒ, ๋น„๋™๊ธฐ ํ•จ์ˆ˜์˜ ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•œ ๊ฒƒ์€ ๋น„๋™๊ธฐ ํ•จ์ˆ˜๊ฐ€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— try…catch๋ฌธ์„ ์‚ฌ์šฉํ•ด ์—๋Ÿฌ๋ฅผ ์บ์น˜ํ•  ์ˆ˜ ์—†์Œ try{ setTimeout(()=>{ throw new Error('Error!') },1000) } catch(e) [ cosole.log('์บ์น˜ํ•œ ์—๋Ÿฌ',e) } async/await์—์„œ๋Š” ์—๋Ÿฌ ์ฒ˜๋ฆฌ์— try...catch ๋ฌธ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ. ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ์ธ์ˆ˜๋กœ ์ „๋‹ฌ๋ฐ›๋Š” ๋น„๋™๊ธฐ ํ•จ์ˆ˜์™€๋Š” ๋‹ฌ๋ฆฌ ํ”„๋กœ๋ฏธ์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋น„๋™๊ธฐ ํ•จ์ˆ˜๋Š” ๋ช…์‹œ์ ์œผ๋กœ ํ˜ธ์ถœ ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ˜ธ์ถœ์ž๊ฐ€ ๋ช…ํ™•. const fetch = require(.. 2023. 1. 26.
[baekjoon]python #5014 ์Šคํƒ€ํŠธ ๋งํฌ [baekjoon]python #5014 ์Šคํƒ€ํŠธ ๋งํฌ https://www.acmicpc.net/problem/5014 5014๋ฒˆ: ์Šคํƒ€ํŠธ๋งํฌ ์ฒซ์งธ ์ค„์— F, S, G, U, D๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) ๊ฑด๋ฌผ์€ 1์ธต๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ณ , ๊ฐ€์žฅ ๋†’์€ ์ธต์€ F์ธต์ด๋‹ค. www.acmicpc.net import sys from collections import deque input = sys.stdin.readline F,S,G,U,D = map(int,input().split()) # ๊ฑด๋ฌผ๋†’์ด, ๊ฐ•ํ˜ธ, ํƒ€๊ฒŸ, ์œ„, ์•„๋ž˜ queue = deque() queue.append((S,0)) # ๊ฐ•ํ˜ธ์˜ ์œ„์น˜, count visit = [0]*(F+1) # ๋ฉ”.. 2023. 1. 26.
[baekjoon]python #1697 ์ˆจ๋ฐ”๊ผญ์งˆ [baekjoon]python #1697 ์ˆจ๋ฐ”๊ผญ์งˆ https://www.acmicpc.net/problem/1697 1697๋ฒˆ: ์ˆจ๋ฐ”๊ผญ์งˆ ์ˆ˜๋นˆ์ด๋Š” ๋™์ƒ๊ณผ ์ˆจ๋ฐ”๊ผญ์งˆ์„ ํ•˜๊ณ  ์žˆ๋‹ค. ์ˆ˜๋นˆ์ด๋Š” ํ˜„์žฌ ์  N(0 ≤ N ≤ 100,000)์— ์žˆ๊ณ , ๋™์ƒ์€ ์  K(0 ≤ K ≤ 100,000)์— ์žˆ๋‹ค. ์ˆ˜๋นˆ์ด๋Š” ๊ฑท๊ฑฐ๋‚˜ ์ˆœ๊ฐ„์ด๋™์„ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋งŒ์•ฝ, ์ˆ˜๋นˆ์ด์˜ ์œ„์น˜๊ฐ€ X์ผ www.acmicpc.net import sys from collections import deque input = sys.stdin.readline subin,sis = map(int,input().split()) queue = deque() queue.append((subin,0)) #๋ฉ”๋ชจ๋ฆฌ ์ดˆ๊ณผ ๋ฐฉ์ง€ visit = [0] * 100001 whi.. 2023. 1. 25.
[baekjoon]python #2178 ๋ฏธ๋กœํƒ์ƒ‰ [baekjoon]python #2178 ๋ฏธ๋กœํƒ์ƒ‰ https://www.acmicpc.net/problem/2178 2178๋ฒˆ: ๋ฏธ๋กœ ํƒ์ƒ‰ ์ฒซ์งธ ์ค„์— ๋‘ ์ •์ˆ˜ N, M(2 ≤ N, M ≤ 100)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ N๊ฐœ์˜ ์ค„์—๋Š” M๊ฐœ์˜ ์ •์ˆ˜๋กœ ๋ฏธ๋กœ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ๊ฐ์˜ ์ˆ˜๋“ค์€ ๋ถ™์–ด์„œ ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง„๋‹ค. www.acmicpc.net import sys from collections import deque input = sys.stdin.readline n,m = map(int,input().split()) arr = [list(map(int,input().strip())) for _ in range(n)] visit = [[0]*m for _ in range(n)] queue = deque() visit[0.. 2023. 1. 25.
[baekjoon]python #2667 ๋‹จ์ง€๋ฒˆํ˜ธ๋ถ™์ด๊ธฐ [baekjoon]python #2667 ๋‹จ์ง€๋ฒˆํ˜ธ๋ถ™์ด๊ธฐ https://www.acmicpc.net/problem/2667 2667๋ฒˆ: ๋‹จ์ง€๋ฒˆํ˜ธ๋ถ™์ด๊ธฐ ๊ณผ ๊ฐ™์ด ์ •์‚ฌ๊ฐํ˜• ๋ชจ์–‘์˜ ์ง€๋„๊ฐ€ ์žˆ๋‹ค. 1์€ ์ง‘์ด ์žˆ๋Š” ๊ณณ์„, 0์€ ์ง‘์ด ์—†๋Š” ๊ณณ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค. ์ฒ ์ˆ˜๋Š” ์ด ์ง€๋„๋ฅผ ๊ฐ€์ง€๊ณ  ์—ฐ๊ฒฐ๋œ ์ง‘์˜ ๋ชจ์ž„์ธ ๋‹จ์ง€๋ฅผ ์ •์˜ํ•˜๊ณ , ๋‹จ์ง€์— ๋ฒˆํ˜ธ๋ฅผ ๋ถ™์ด๋ ค ํ•œ๋‹ค. ์—ฌ www.acmicpc.net import sys input = sys.stdin.readline from collections import deque n = int(input()) arr = [list(map(int,input().strip())) for _ in range(n)] #์ง‘์˜ ์ˆ˜ answer = [] #๋‹จ์ง€ ์ˆ˜ cnt=0 def bfs(y,x): queue =.. 2023. 1. 25.
[Electron] electron ์•„์ด์ฝ˜ ๋„ฃ๊ธฐ //๋””๋ ‰ํ† ๋ฆฌ์— ์•„์ด์ฝ˜ ํŒŒ์ผ์„ ๋„ฃ์€ ๋’ค ์„ค์ • //electron.js - ๋ฉ”์ธํ”„๋กœ์„ธ์„œ ํŒŒ์ผ const {app, BrowserWindow,ipcMain} = require('electron') const path = require('path') // const fs = require("fs"); function createWindow () { const mainWindow = new BrowserWindow({ width: 528, height: 791, resizable:false, //size ๊ณ ์ • useContentSize :true, //๊ฐ€์šด๋ฐ ์„ค์ • center:true, //์•ฑ ์‹คํ–‰์‹œ ์œˆ๋„์šฐ๋ฅผ ํ™”๋ฉด ์ •์ค‘์•™์— ์œ„์น˜ **icon:path.join(__dirname,'[๋กœ๊ณ  path]'), //์ผ๋ ‰ํŠธ๋ก .. 2023. 1. 25.
[React] console.log(useRef) useRefํ•จ์ˆ˜๋Š” current์†์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ ์ธ์ž๋กœ ๋„˜์–ด์˜จ ์ดˆ๊ธฐ๊ฐ’์„ current์†์„ฑ์— ํ• ๋‹น ์ด current ์†์„ฑ์€ ๊ฐ’์„ ๋ณ€๊ฒฝํ•ด๋„ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•  ๋•Œ์ฒ˜๋Ÿผ React ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋‹ค์‹œ ๋žœ๋”๋ง ์•ˆ๋จ React ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋‹ค์‹œ ๋žœ๋”๋ง๋  ๋•Œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ด current ์†์„ฑ์˜ ๊ฐ’์ด ์œ ์‹ค๋˜์ง€ ์•Š์Œ Reference React Hooks: useRef ์‚ฌ์šฉ๋ฒ• Hooks API Reference - React 2023. 1. 25.
[JavaScript] async / await 1 async / await ์™œ ์‚ฌ์šฉํ•  ๊นŒ? Promise ์ฒด์ด๋‹์€ ์ฝœ๋ฐฑ ์ง€์˜ฅ์„ ๋ฒ—์–ด๋‚˜๊ฒŒ ํ–ˆ์ง€๋งŒ, Promise ์ฒด์ด๋‹ ๋˜ํ•œ ๊ธธ์–ด์งˆ ๊ฒฝ์šฐ ์—ฌ์ „ํžˆ ๊ฐ€๋…์„ฑ์ด ๋–จ์–ด์ง ES2017์— ์ฒ˜์Œ์— ๋“ฑ์žฅํ•œ async, await๋Š” syntactic sugar๋กœ Promise ์‚ฌ์šฉ์„ ์ข€ ๋” ํŽธ๋ฆฌํ•˜๊ณ  ์„ธ๋ จ๋˜๊ฒŒ ํŽธ๋ฆฌํ•˜๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ฒ˜๋ฆฌ async ํ‚ค์›Œ๋“œ๋Š” ํ•จ์ˆ˜ ์•ž์— ๋ถ™์ž„ ํ•จ์ˆ˜ ์•ž์— async ๋ถ™๊ฒŒ ๋˜๋ฉด promise๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค๋Š” ์˜๋ฏธ async/ await ํ”„๋กœ๋ฏธ์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ ํ”„๋กœ๋ฏธ์Šค์˜ then/catch/finally ํ›„์† ์ฒ˜๋ฆฌ ๋ฉ”์„œ๋“œ์— ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ์ „๋‹ฌํ•ด ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ํ›„์† ์ฒ˜๋ฆฌํ•  ํ•„์š” ์—†์ด ๋™๊ธฐ ์ฒ˜๋ฆฌ์ฒ˜๋Ÿผ ํ”„๋กœ๋ฏธ์Šค๋ฅผ ์‚ฌ์šฉ asyncํ•จ์ˆ˜ await ํ‚ค์›Œ๋“œ๋Š” ๋ฐ˜๋“œ์‹œ async ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ ์‚ฌ์šฉ async ํ•จ์ˆ˜๋Š” .. 2023. 1. 25.
[React] ref, useRef ref? JS๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ์—๋Š” ํŠน์ • DOM์„ ์„ ํƒํ•ด์•ผํ•˜๋Š” ์ƒํ™ฉ์—์„œ getElementById, querySelector ๊ฐ™์€ DOM Selector ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด์„œ DOM์„ ์„ ํƒ ๋ฆฌ์•กํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ์ ํŠธ์—์„œ DOM์„ ์ง์ ‘ ์„ ํƒํ•ด์•ผ ํ•˜๋Š” ์ƒํ™ฉ์ด ์ƒ๊ธฐ๋ฉด ref๋ฅผ ํ™œ์šฉ ํ•จ์ˆ˜ํ˜• ์ปดํฌ๋„ŒํŠธ์—์„œ **ref**๋ฅผ ์‚ฌ์šฉ ํ•  ๋•Œ์—๋Š” **useRef** ๋ผ๋Š” Hook ํ•จ์ˆ˜ ์‚ฌ์šฉ ํด๋ž˜์Šค ์ปดํฌ๋„ŒํŠธ์—์„œ๋Š” ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ **React.createRef ๋ผ๋Š” ํ•จ์ˆ˜ ์‚ฌ์šฉ** ํฌ์ปค์Šค๋ฅผ ์žก์œผ๋ ค๋ฉด nameInput.current.focus() ํ˜•ํƒœ๋กœ ์ž‘์„ฑ const nameInput = useReft(); const onClick = () => { nameInput.current.focus(); } return( ํด๋ฆญ ) use.. 2023. 1. 24.
[React] port ๋ฒˆํ˜ธ ๋ณ€๊ฒฝํ•˜๊ธฐ ๋ฐฉ๋ฒ•1. ๋ช…๋ น์–ด๋กœ ์‹คํ–‰ (1ํšŒ์„ฑ) PORT=[์ˆซ์ž] npm run start ๋ฐฉ๋ฒ•2. package.json ์ˆ˜์ • window ... "scripts": { "start": "set PORT=3002 && react-scripts start", } ... ๋ฐฉ๋ฒ•3. ํ”„๋กœ์ ํŠธ๋ช…/node_modules/react-scripts/scripts/start.js ์ˆ˜์ •ํ•˜๊ธฐ const DEFAULT_PORT = parseInt(process.env.PORT, 10) || 3002;// ์ˆ˜์ • const HOST = process.env.HOST || '0.0.0.0'; ๋ฐฉ๋ฒ•4. .env ํŒŒ์ผ ์ƒ์„ฑํ•˜๊ณ  port ์„ค์ •ํ•˜๊ธฐ ํ”„๋กœ์ ํŠธ๋ช…/.env PORT=3002 ๋ช…๋ น์–ด๋กœ ์‹คํ–‰ npm run start Reference [#. .. 2023. 1. 23.